Rails急切加载与所选属性的关联

时间:2013-03-12 09:59:05

标签: ruby-on-rails ruby-on-rails-3 eager-loading

有人能告诉我是否可以加载关联但只返回特定属性?

我想用他们的帐户检索一些订单,但只需要帐户名称。

Order.select([:id, :account_id]).includes(:account).limit(2)

1 个答案:

答案 0 :(得分:5)

我认为jvnill的评论说明了一切:

  

我不确定这是可能的。但是,您可以将account_name添加到返回的订单记录中。

orders = Order.joins(:account).select('orders.id, orders.account_id, accounts.name AS account_name')
  

然后只使用account_name,如orders.first.account_name