加入多对多关系 - Laravel

时间:2017-10-22 08:50:45

标签: php laravel

我在多对多关系countries and teams table中有两个表。在我的国家/地区表格中,有president_id。现在我想使用连接查询获得属于该president_id的团队,但我无法实现此目的。

如何选择属于特定总统的所有团队?

PS :laravel新手

国家

public function teams()
    {
        return $this->belongsToMany('App\Team');
        ->withTimestamps();
    }

团队

public function countries()
    {
        return $this->belongsToMany('App\Country')
        ->withTimestamps();
    }

控制器

$teams = Team::all()->with('countries')->where('president_id,1)->first();
$getTeams =  $teams->pluck('id')->toArray();

1 个答案:

答案 0 :(得分:0)

你可以让所有拥有president_id {{}}}国家/地区的所有团队都这样:

$president_id = 1;
$teams = Team::whereHas('countries',function($q)use($president_id){
             $q->where('president_id',$president_id);
         })->get();