【发布时间】:2018-04-08 04:45:24
【问题描述】:
我在预加载 belongs_to 关联时遇到问题。
有问题的模型具有以下关联
class Order < ActiveRecord::Base
belongs_to :user_name, -> { select(:id, :name) }, class_name: "User", :foreign_key => 'user_id'
end
上述关联工作正常并按预期解决。
我想返回 user.id 和 user.name 以及 order。
如何预加载关联user_name。
我确实尝试了Order.includes(:user_name),但没有按预期工作。
【问题讨论】:
-
这看起来很奇怪,你为什么不先
belongs_to :user然后Order.find(1).user.name? -
你不应该选择关系。您可以在模型中添加范围
-
Order.includes(:user_name)到底有什么问题?
标签: ruby-on-rails activerecord