テーブルがitemsありcards、カードが に属しておりuser、item特定のユーザーのカードがある場合とない場合があります。
基本的な関連付けは次のように設定されます。
Class User
has_many :cards
Class Item
has_many :cards
Class Card
belongs_to :user
has_and_belongs_to_many :items
items_cardsまた、列item_idとを含む結合テーブルも作成しましたcard_id。特定のユーザー/アイテムのカードがあるかどうかを示すクエリを作成したいと思います。純粋な SQL では、これを非常に簡単に実現できます。
SELECT count(id)
FROM cards
JOIN items_cards
ON items_cards.card_id = cards.id
WHERE cards.user_id = ?
AND items_cards.item_id = ?
ActiveRecord を介してこれを行う方法についてのガイダンスを探しています。ありがとう!