1

J'ai une l'association polymorphique suivante mis en place:Rails: Tirer les résultats pour une association polymorphique

class Favorite < ActiveRecord::Base 
    belongs_to :favoritable, :polymorphic => true 
    belongs_to :user 
end 

class Photo < ActiveRecord::Base 
    has_many :favorites, :as => :favoritable 
    belongs_to :user 
end 

Ce que je veux finalement à faire est de tirer toutes les photos a Favorited un utilisateur spécifique.

Comment pourrais-je y arriver?

Répondre

1

Vous pouvez utiliser le Active Record Query Interface pour cela:

Photo.joins(:favorites).where("favorites.user_id = ?", user_id)

Ceci renvoie un tableau d'objets photo (ainsi que des champs joints de favori) qui a Favorited un utilisateur spécifique. Vous devrez passer le user_id à cet appel.

Questions connexes