ruby-on-rails – 如何在命名范围内拥有多个条件?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 如何在命名范围内拥有多个条件?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个用户模型.我可以通过执行a_user.try(:admin?)来检查用户是否是管理员.

我想定义一个命名范围,它可以在最后X分钟内更新所有用户,而不是管理员.到目前为止我有:

scope :recent,lambda { { :conditions => ['updated_at > ?',5.minutes.ago] } }

这成功地使所有用户在最近5分钟内更新,但如何合并管理员检查?我不知道如何在范围内的用户实例上调用try()…

解决方法

如果users表中的admin列是布尔值,
scope :recent,lambda { :conditions => ['updated_at > ? AND admin != ?',5.minutes.ago,true] }

猜你在找的Ruby相关文章