Has_Many: attraverso con Has_and_belongs_to_many in Rails
Domanda
In Rails - Qual è l'effetto dell'utilizzo di Has_Many: attraverso con Has_and_belongs_to_many? Prendi in considerazione l'idea di avere due modelli: post e tag che hanno una relazione da molti a molti come indicato di seguito:
class Tag < ActiveRecord::Base
has_many :posts_tag
has_and_belongs_to_many :posts
end
class Post < ActiveRecord::Base
has_many :posts_tag
has_many :tags, :through => posts_tag
end
class PostsTag < ActiveRecord::Base
belongs_to :tag
belongs_to :post
end
Il motivo per cui uso has_and_belongs_to_many
è perché a tag
appartiene a molti post.
Ho esaminato il Guida dell'associazione Rails E vedi che non menzionano questo caso per una relazione da molti a molti. Tuttavia, ho provato questo e gestirlo in binari non ha prodotto alcun comportamento e dal piccolo database di test che ho costruito, sembrava anche restituire i risultati corretti per post.tags
e tag.posts
- dove post
e tag
Fare riferimento a un'istanza del Post
e Tag
modelli rispettivamente.
È un utilizzo corretto o ha effetti collaterali di cui non sono a conoscenza? Inoltre, se è corretto, è questo il modo di Rails per raggiungere questo obiettivo?
Grazie!
Nessuna soluzione corretta