我的控制器中有一个实例变量,我正在尝试将其转换为模型的范围。
实例变量:products
@products_with_user_differences = Product.where{|p| p.last_user != p.user.username && p.asset_type.name == "Computer" unless p.user.nil? or p.allow_multi_users == true}
解释:
这显示了last_user值不同于user.username且类型为"Computer"的所有产品。它还排除了user_id:为nil或allow_multi_users属性设置为TRUE的任何产品。
我尝试了以下零运气:Products.rb
scope :with_user_differences, -> { where(last_user != user.username && asset_type.name == "Computer" unless user.nil? or allow_multi_users == true)}
它似乎无法识别关联或在范围内允许“!=”。
任何想法或指示?