首页 > 解决方案 > 我应该如何预加载数据?

问题描述

我是 Rails 新手,想了解应该把.includes.

例如,我的控制器中有以下内容:

@offices = Office
        .includes(:services, :location, :manager)

是否应该将其移至 Office 模型中?如果是这样,应该怎么做?

标签: ruby-on-railsactiverecordruby-on-rails-5

解决方案


如果您要在多个地方执行此操作,您可以将此逻辑放在模型上

模型

class Office < ApplicationRecord
  scope :with_includes, -> { includes :services, :location, :manager }
end

控制器

@offices = Office.with_includes

推荐阅读