我正在尝试从模型中选择所有记录,而不是在关联记录中包含nil字段的记录。到目前为止,我有这个:
User.where("id NOT IN (?)", User.all(:include => :profile, :conditions => {:profiles => {:first_name => nil, :last_name => nil}}))
我想知道是否有更直接或最佳的方式来做到这一点。
谢谢!
答案 0 :(得分:1)
这样的事情应该有效:
User.includes(:profile).where('profiles.first_name IS NOT?AND profiles.last_name IS NOT?',nil,nil)
更新:替换了!= IS NOT。 sql中不允许运算符!=。它应该现在正在运作。