我创建了模型Profile.rb
在数据库列上我有name
,目前是空的
如何在Rails控制台上检查Profile是否为空?
我尝试过Profile.empty?
,但我猜那不是正确的方法
我创建了模型Profile.rb
在数据库列上我有name
,目前是空的
如何在Rails控制台上检查Profile是否为空?
我尝试过Profile.empty?
,但我猜那不是正确的方法
这也可能是你的一个选择。
Profile.any?
这将会像对数据库的查询一样执行
Profile.any?
# (0.6ms) SELECT COUNT(*) FROM "profiles"
# => false
我想这样会更有语义化。
Profile.first.nil?
Profile.exists?
如果表不为空,它将返回true,如果表为空,则返回false。
你也可以尝试一下
Profile.first.present?
我认为这将使代码更易读,但nil?
也可以使用。
我不清楚你的意思是Profile表为空,还是任何一个Profile条目中的名称列为空。
正如kjprice所提到的,你可以先查询数据库。或者执行以下操作:
Profile.all.count < 1
Profile.first.name.empty?
Profile.all.count < 1
隐含着 Profile.all.count == 0
,因此我们可以使用 Profile.all.count.zero?
,这样更清晰明了! - Hieu Pham