레일에서 - has_many를 사용했을 때의 영향 : has_and_belongs_to_many?has_many : through와 with_and_belongs_to_many with Rails
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
나는 tag
많은 게시물에 속하기 때문에 has_and_belongs_to_many
가 사용하는 이유 : 아래에 표시된 게시물과 다 대다 관계가 태그 - 두 가지 모델을 준비하십시오.
나는 Rails Association guide을 조사했는데 다 대다 관계에 대해이 사례를 언급하지 않았다는 것을 알았습니다. 그러나 나는 이것을 시도해 보았고 Rails에서 실행해도 아무런 문제가 발생하지 않았고 내가 만든 작은 테스트 데이터베이스에서 post.tags
과 tag.posts
에 대한 정확한 결과를 반환하는 것으로 보였습니다. post
과 tag
은 Post
및 Tag
모델입니다.
이 올바른 사용법입니까, 아니면 내가 모르는 부작용이 있습니까? 또한, 그것이 맞다면 이것을 달성하는 레일 방식입니까?
감사합니다.
네, "레일스가 항상 영어에 어울리는 것은 아닙니다."라고 말한 부분은 내가 생각하기에 P 몇 가지 일반적인 작업이'has_many : through'와'has_and_belongs_to_many'로 작동한다는 것을 감안할 때, 순전히 교육학적인 관점에서 그것이 부작용이 있는지를 아는 것은 흥미로울 것입니다. 나는 그것을 사용하는 올바른 방법이 아니라는 것을 이해합니다. –
업데이트를 확인하십시오. –
감사! 그건 의미가 있습니다 :) –