Laravel hasManyThrough有多个键

时间:2017-11-20 15:28:10

标签: php laravel laravel-5 eloquent laravel-eloquent

我正在尝试使用Laravel 5.5创建一个应用程序,我需要通过另一个获取许多对象,除了我有两个要查询的键列,但无法计算(或找出)如何执行它。

以下是我的表格:

[seasons] id ...

[Teams] id name ...

[fixtures] id, season_id, home_id, away_id, ...

通过这个,我试图通过使用home_id和away_id作为我的球队ID的关键字段来获得本赛季的球队列表。

有什么想法吗? 谢谢!

1 个答案:

答案 0 :(得分:0)

请勿使用hasManyThrough。将它视为多对多的关系,并使用固定装置表作为支点。

季节模型中的

public function homeTeams(){
  return $this->belongsToMany(Team::class, 'fixtures', 'season_id', 'home_id');
}

public function awayTeams(){
  return $this->belongsToMany(Team::class, 'fixtures', 'season_id', 'away_id');
}