質問: UserモデルとCompanyモデルがあったとして、 Companyのテーブルの構成をどうすればいいか悩んでいます。 ``` id, company_name, user_id, user_id, user_id ``` とするわけにはいかないと思うんですが、関連付けの機能は利用したいと考えています。 仮に Companyのテーブルの構成を ``` id, company_name, tanto, hojo1, hojo2 ``` とすると関連付けが難しいような気がして、間にuser_company テーブルのようなモデルをもうひとつ作る感じになるのでしょうか??
回答: 担当と補助者は位置づけの区別がしっかりしているのですが、補助者は多分対等なのですね。ですのでちと迷います。 仮に補助者にNo1とNo2という使い分けがあるのなら 担当者_id、補助者1_id、補助者2_id (漢字は適宜直して下さい)として has_one :担当者, class_name: 'User',foreign_key: :担当者_id のようにすればよいです。 補助者が対等だとこれはしっくりこないので、その場合は多対多にしていただくのかな company_id,user_id, 担当type ですかね