[英]Rails 3 Joins Active Record query
I am stuck at join two tables using active record 3.0 我被困在使用活动记录3.0连接两个表
Table A 表A
id name 身份证名
1 xcv 1 xcv
Table B #a_id is foreign_key 表B #a_id为foreign_key
id date a_id id日期a_id
1 9/15 1 1 9/15 1
How to query using active record to get output as 如何使用活动记录查询以获取输出
id date a_name 身份证日期a_name
1 9/15/ xcv 1 9/15 / xcv
When I do 当我做
B.joins(:A)
in Model B than I get following sql 在模型B中,我得到以下sql
SELECT "B".* FROM "B" INNER JOIN "A" ON "A"."ID" = "B"."A_ID"
When I query it on our DB it give correct output but rails logger has wrong output 当我在数据库上查询它时,它给出正确的输出,但是Rails logger的输出错误
#<B id: 1, date"9/15/11", a_id: 2>
I want is 我想要的是
#<B id: 1, date"9/15/11", a_name: xcv>
Relation is as follow 关系如下
A has_many :B
B belongs_to :A
Any help is really appreciated.. 任何帮助都非常感激..
I believe what you're looking for is 我相信你在找什么
@bees = b.includes(:a).all # this will join A and eager load your A's
then on your view, you can output 然后在您的视图上,您可以输出
<% @bees.each do |b| %>
<%= b.a.name %>, <%= b.a.date %>
<% end %>
or work with it in a similar manner 或以类似方式使用它
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.