我想要 ActiveRecord 中的“逻辑或”动态查找器。有人见过这样的东西吗?
所以本着这样的精神..
User.find_by_name_and_email("foo", "bar@thud.com")
..你可以做这样的事情..
User.find_by_username_or_email(user_input)
最佳答案
您的数据库中真正有多少字段将具有您可以像这样查找的真实值?足以担心使用动态查找器方法了吗?可能不会。 named_scope 有什么问题吗?
class User < ActiveRecord::Base
named_scope :user_or_email, lambda{ |user_name|
{ :conditions => ["username =? OR email =?", user_name, user_name] }
}
end
这就是你想要的,我只是认为这种事情不会经常弹出来证明动态查找器的合理性,但嘿,我可能是错的。
关于ruby-on-rails - 使用 Union Logic 的 ActiveRecord 动态基于属性的查找器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/963253/