Associations polymorphes dans Rails
-
22-08-2019 - |
Question
Comment les associations polymorphes travaillent dans Rails? Quels sont leurs avantages? Y at-il un moyen d'ajouter la méthode de belongs_to
simplement en exécutant une migration?
La solution
Ryan a Railscast sur ce qui est assez bon.
belongs_to n'est pas quelque chose que vous ajoutez à une migration, vous ajoutez au modèle. Dans la migration, vous devez ajouter la colonne clé étrangère. Par exemple, si vous avez un modèle de poste qui appartient à un utilisateur, vous souhaitez ajouter la colonne user_id au activerecord post dans une migration. Ensuite, vous ajoutez
belongs_to :user
dans le modèle de poste séparément. Ensuite rails feront sa magie en arrière-plan pour vous donner les collections proxy dans le modèle utilisateur.