假设我需要检查是否没有设置某个属性。在ActiveRecord中,如何检查对象属性是否为零?
我想像这样的东西,但它不起作用。
@users = User.find_all_by_role(["role = ?",nil])
我尝试了一些没有运气的变体。
我想这应该是非常简单的。
谢谢!
假设我需要检查是否没有设置某个属性。在ActiveRecord中,如何检查对象属性是否为零?
我想像这样的东西,但它不起作用。
@users = User.find_all_by_role(["role = ?",nil])
我尝试了一些没有运气的变体。
我想这应该是非常简单的。
谢谢!
使用ActiveRecord的pre-3.0语法:
@users = User.find(:all, :conditions => { :role => nil })
3.0后,你可以写:
@users = User.where(:role => nil)
尝试:@users = User.find(:all, :conditions=>'role is null')
@users = User.where(:roles => nil).all
没有必要闯入SQL这一点。
谢谢你,有一个以上的更清洁的方式。 – Martin 2011-02-16 18:22:10