2 回答

TA貢獻(xiàn)2021條經(jīng)驗(yàn) 獲得超8個(gè)贊
如果我理解正確的話..你想要 $site_census_ids 用戶已經(jīng)足夠簡(jiǎn)單了:
$site_census_ids=$myUser->groups()
->join('group_site_census','group_site_census.group_id','=','groups.id')
->join('sites_census','sites_census.id','group_site_census.sites_census_id')
->select('sites_census.id')->get()->pluck('id');
請(qǐng)確保表名“sites_census”、“groups”正確

TA貢獻(xiàn)1848條經(jīng)驗(yàn) 獲得超2個(gè)贊
事實(shí)證明,laravel 實(shí)際上確實(shí)有一種簡(jiǎn)單的方法可以做到這一點(diǎn)。您可以whereHas()直接使用鏈接表。就我而言,這就是我所需要的。
static::addGlobalScope('status', function (Builder $builder) {
$builder->where(function (Builder $q) {
return $q->whereHas('siteCensus.groups.users', function ($q) {
$q->where('user_id', Auth::user()->id);
});
});
});
- 2 回答
- 0 關(guān)注
- 123 瀏覽
添加回答
舉報(bào)