Associations Rails, habtm? Polymorphe? Tous les deux?
-
05-07-2019 - |
Question
Dans mon application Rails, j'ai trois modèles, Projets, BlogPosts et Images. Les projets et BlogPosts peuvent avoir de nombreuses images liées et une image peut être liée à un projet, à un BlogPost ou aux deux.
Quel est le meilleur moyen de configurer les associations pour que cela fonctionne dans Rails?
La solution
Je taillerais l'habtm dans une classe de modèle séparée, ImageLink. Ensuite, vous obtiendrez:
Project
has_many :image_links, :as => :resource
BlogPost
has_many :image_links, :as => :resource
ImageLink
belongs_to :image
belongs_to :resource, :polymorphic => true
Image:
has_many :image_links
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow