搜索许多关系Laravel

时间:2017-06-14 11:43:45

标签: php laravel laravel-eloquent

在Laravel我有这个模型:

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

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

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

感谢您的回复。

2 个答案:

答案 0 :(得分:3)

使用eager loading

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

答案 1 :(得分:3)

请检查以下链接,您需要在查询中传递方法名称,如下所示:

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

欲了解更多信息,请访问:

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

这也可以帮助您减轻查询的负担。