0

モデルのスコープに変換しようとしているインスタンス変数がコントローラーにあります。

インスタンス変数: 製品

@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}

説明:

これは、タイプが"Computer"のuser.usernameとは異なるlast_user値を持つすべての製品を示しています。また、 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)}

アソシエーションを認識していないか、スコープ内で「!=」を許可していないようです。

アイデアや指針はありますか?

4

1 に答える 1