如何渴望在laravel中加载嵌套关系?

时间:2019-03-04 12:27:07

标签: laravel laravel-5 eloquent eager-loading

我有三个实体用户,博客和评论。我可以使用以下代码加载用户博客:

$userBlogs = User::with('blogs')->get();

但是我如何渴望加载与每个博客相关的评论?

用户:

public function blogs() {
    return $this->hasMany(Blog::class);
}

博客:

public function comments() {
  return $this->hasMany(Comments::class);
}

1 个答案:

答案 0 :(得分:4)

您可以做到

$userBlogs = User::with('blogs.comments')->get();

或者您可以

$userBlogs  = User::with(['blogs' => function ($query) {
    $query->with('comments');
}]