質問: ### Ruby on RailsのModelの関連付けについて質問です。 RailsのModelの関連付けで悩んでいます。 現在、Railsの勉強(完全に勉強用です。)でグループ機能付きのブログサービスを開発しております。 Modelの関連付けの件で質問があります。内容と設定は以下の通りです。 Modelの設定: Users(ユーザー情報) Posts(ユーザーが投稿するPost) Comments(ユーザーが投稿したPostに他のユーザーがするコメント) Groups(UserとPostが属するグループ) 上記のModelの設定でUsersとPostsとGroupsの関連付けを実装中で悩んでいます。 以下のような関係の関連付けを作成したいです。 Userは多数のGroupに所属でき、多数のPostを持つ。 Postは1つのGroupに所属でき、1人の Userに属する。 Groupは多数のUserとPostを持つ。 仕様は、 ユーザーは自由に投稿を作成して投稿できる。 ユーザーは他のユーザーの投稿に自由にコメントできる。 ユーザーは自由にグループを作成できる。 グループを作成したユーザーがそのグループの管理者になる。 (これはどんな実装をすれば良いか分かりません。ここもアドバイス頂けると幸いです。) 現在は、以下の関連付けまで完成しておりますが、Groupの関連付けが分かりません。 アドバイスなど、よろしくお願いいたします! ### 現在、分かっている点 ``` has_many :posts has_many :comments belong_to :user has_many :comments belong_to :user belong_to :post ``` 上記のGroupの関連付けがわかりません。。 アドバイスなどよろしくお願いいたします。 ### 補足情報(言語/FW/ツール等のバージョンなど) Ruby:2.1.8 Rails:4.2.1
回答: * > > ... > > has_many :through関連付けは、他方のモデルと「多対多」のつながりを設定する場合によく使われます。 > > ... > > > この章や、このページ全体の内容を調査するとよいとおもいます。