laravel的模型嵌套关联问题

现在做的类似朋友圈的接口查询
用户表 user 文章表 article 评论表 comment 点赞表 zan 结构如下

class User extand Model {
    public function articles() {
        return $this->hasMany(Article::class, 'user_id', 'id');
    }
}

class Article extand Model {
    public function comments() {
        return $this->hasMany(Comment::class, 'article_id', 'id');
    }
}

class Article extand Model {
    public function zans() {
        return $this->hasMany(Zan::class, 'article_id', 'id');
    }
}

class Comment extand Model {
    public function user() {
        return $this->belongsTo(User::class, 'user_id', 'id');
    }
}

class Zan extand Model {
    public function user() {
        return $this->belongsTo(User::class, 'user_id', 'id');
    }
}

User::with('articles.comments.user')->where('id', 10)->get();

现在需求是根据用户 id 查询所有文章和文章下面的评论和点赞,评论、点赞里显示对应的用户信息。

User::with('articles.comments.user')->find(10);
`
上面只能查出一种,用 morphTo这种嵌套的没试出来,请问大家有没有高效的方法呢。
阅读 2.9k
1 个回答
User::with(['articles.comments.user','articles.zans.user'])->find(10);

这样是可以实现,但是效率是不是很低呢、

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进