どうもfujiharaです。今回はLaravelで関連モデルを設定する時に複数の外部キーで紐付ける方法をご紹介します。 同じ悩みを抱えてる方がこの記事のタイトルで発見してくれるか不安です。 背景 外部サービスからデータをインポートする時に以下のような状態でした。(例) Cityのcodeがユニークかと思ったら、prefecture_codeとの複合ユニークでHospitalと紐付けるには 外部キーを複数で設定する必要がありました。 インポートする時にidで紐付けるようにすればとも思ったんですが、インポート時に検索クエリを出したくないのもあり そのままインポートしました。 Compoships 今回の場合、HospitalはCityにBelongsToなのですが、LaravelのBelongsToを 設定する際に設定できる外部キーは1つだけなのでComposhipsを導入しました。 設定する
![Compoships 関連モデルを複数の外部キーで紐付ける[Laravel] | バシャログ。](https://cdn-ak-scissors.b.st-hatena.com/image/square/38df73ea9287c2b00c7f1fa73834a56a2278336c/height=288;version=1;width=512/https%3A%2F%2Fbashalog.c-brains.jp%2Fimages%2FLaravel-logo.jpg)