连接表上的Rails条件

时间:2012-08-14 04:59:16

标签: ruby-on-rails join conditional-statements

我有桌子a,b。相关课程

class A < ActiveRecord::Base
   has_one :b
end

class B <ActiveRecord::Base
end

b具有整数字段c。

我想要检索A的所有记录,其中B具有c < 5。

我试过

A.find(:conditions => (B.c < 5) )

但我收到投诉“未定义成员c”。

实现这一目标的最佳方法是什么?

3 个答案:

答案 0 :(得分:1)

试试这个:

A.joins(:b).where("b.c < 5")

答案 1 :(得分:1)

不要使用find。 继续“在哪里”

A.joins(:b).where("b.c < 5")

A.b.where("c < 5")

答案 2 :(得分:0)

试试这个

 A.b.where("c < 5")

不要使用查找contions,它会使用rails 3递减