0

我被困在使用活动记录 3.0 连接两个表

表 A
id 名称
1 xcv

表 B #a_id 是 foreign_key
id 日期 a_id
1 9/15 1

如何使用活动记录查询以获取输出为
id date a_name
1 9/15/xcv

当我做

B.joins(:A)

在模型 B 中比我得到以下 sql

SELECT "B".* FROM "B" INNER JOIN "A" ON "A"."ID" = "B"."A_ID"

当我在我们的数据库上查询它时,它会给出正确的输出,但 rails logger 的输出错误

#<B id: 1, date"9/15/11", a_id: 2>

我想要的是

#<B id: 1, date"9/15/11", a_name: xcv>

关系如下

A has_many :B
B belongs_to :A

任何帮助都非常感谢..

4

1 回答 1

0

我相信你正在寻找的是

@bees = b.includes(:a).all # this will join A and eager load your A's

然后在您看来,您可以输出

<% @bees.each do |b| %>
  <%= b.a.name %>, <%= b.a.date %>
<% end %>

或以类似的方式使用它

于 2011-09-15T17:23:09.567 回答