Associações de Rails, HABTM? Polimórfico? Ambos?
-
05-07-2019 - |
Pergunta
No meu aplicativo Rails, tenho três modelos, projetos, posts e imagens. Projetos e posts podem ter muitas imagens vinculadas e uma imagem pode ser vinculada a um projeto, um post do blog ou ambos.
Qual é a melhor maneira de configurar as associações para fazer isso funcionar em trilhos?
Solução
Eu provocaria o HABTM em uma classe modelo separada, ImageLink. Então você conseguiria:
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
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow