HABTM.empty?不在where子句中工作?

时间:2011-05-28 04:53:44

标签: ruby-on-rails-3 where-clause has-and-belongs-to-many

我的人物模型拥有并属于许多帐户。

我正在尝试列出所有“孤儿”的人,这些人还没有与任何帐户绑定。

Person.where( :accounts.empty? )会抛出错误,因为符号:accounts没有空?方法

Person.all.collect {|per| per unless per.accounts.empty?}会让每个人都回归。

Person.all.each |per|
   if per.accounts.empty?
      puts per.id
   end
end

那个人正确地打印出每个孤儿的ids。我正在努力实现的语法是什么? : - )

1 个答案:

答案 0 :(得分:3)

Person.includes(:accounts).where( :accounts => { :id => nil } )