1) 사용자는 많은 원인을 가질 수 있으며 원인은 많은 사용자에게 속할 수 있습니다.이 유스 케이스의 테이블과 관계를 설정하는 가장 좋은 방법은 무엇입니까?
2) 사용자는 많은 캠페인을 가질 수 있으며 캠페인은 많은 사용자에게 속할 수 있습니다. 캠페인은 하나의 원인에 속합니다.
특정 사용자에게 원인이나 캠페인을 개별적으로 할당 할 수 있기를 원합니다. 따라서 사용자에게 특정 캠페인을 할당 할 수 있습니다. 또는 사용자에게 원인을 할당 할 수 있으며 원인의 모든 캠페인을 사용자와 연관시켜야합니다.
가능합니까? 관계가과 같이 단순화 할 수 있도록 그리고 나는 그것을 설정할 수 있습니다 :
User.causes = 사용자
User.campaigns에 속하는 모든 원인 =에 속한 모든 캠페인 사용자
나는 그것이 가깝다고 생각한다. 그러나 원인은 많은 캠페인을 가질 수 있습니다. 그리고 나는 사용자의 원인이나 사용자와 관련된 개별 캠페인의 캠페인이되기 위해 여전히 User.campaigns가 필요합니다 ... –
내 편집 된 답변보기 편집] –
편집 된 솔루션이 효과가 있다고 생각합니다. 나는 중복 된 것을 없애기 위해 .flatten.uniq을 반환 된 컬렉션에 추가했으며, 나는 잘 할 수 있다고 생각합니다. 정말 도움을 주셔서 감사합니다 :) - has_many : 대신 has_and_belongs_to_many를 사용했습니다. –