在多对多关系中搜索 Laravel

Search in many to many relation Laravel

在 Laravel 我有这个型号:

class User {
        public function sites(){
                 return $this->belongsToMany(Site::class);
        }
}

class Site extends Model {
        public function users(){
                 return $this->belongsToMany(User::class);
        }
}

在迁移后的数据库中,我有 table site_user 字段:user_idsites_id。 现在,我如何为每个用户检索链接到他的网站?

感谢回复。

使用eager loading

$users = App\User::with('sites')->get();

请检查下面的 link 您需要在查询中传递方法名称,如下所示:

$users = App\Users::with('sites')->get();

更多信息请访问:

https://laravel.com/docs/5.4/eloquent-relationships#eager-loading

这也将帮助您减少查询的负载。