下記のリンクを参考にEloquentのリレーションにhasManyThroughを設定しましょう
Laravelのリレーション hasManyThrough の使い方を毎回間違うのでメモ
// ユーザーモデル
class User extends Model
{
public function Games() {
return $this->hasManyThrough(①, ②, ③, ④, ⑤, ⑥); // ← 毎回忘れる
}
}
| 番号 | user_id |
|---|---|
| ① | リレーションを経由したあとに取得したいモデル (Model\Game) |
| ② | リレーション用のモデル (Model\UserGame) |
| ③ | ②のモデルを呼び出し元のモデル (Model\User) と結びつけるために使うキー (user_id) |
| ④ | ①のマスタID (game_master_id) |
| ⑤ | 不明 |
| ⑥ | ②のモデルを①のモデルと結びつけるために使うキー (game_id) |