Rails - vérifier si l'enregistrement existe dans has_many association

Je ne sais pas si ma question est formulée correctement.

J'ai trois modèles: User, Item, et UserItem.

user has_many :user_items
user has_many :items, through :user_items

item has_many :user_items
item has_many :users -> {uniq}, through :user_items
item belongs_to :user

user_item belongs_to :user
user_item belongs_to :item

J'ai besoin d'un moyen de voir si un utilisateur a un élément à prendre if déclarations de mon point vue, Mais le hic, c'est, user_items ont enum status: [ :pending, approved]. Donc j'ai besoin de voir si un current_user a un certain :pending élément.

Par exemple, lorsqu'un utilisateur visite item1 d'affichage de la page, j'ai le item_controller de l'action show déclarer @item = Item.find_by_id(params[:id]). Mais alors, que puis-je faire avec cette @item pour voir si un utilisateur a ce point?

OriginalL'auteur user4584963 | 2016-04-08