Laravel关系 - 一篇文章的许多评论,一个用户在一个评论中
我有一个帖子模型:
$posts = Post::with('comments')->get();
每个评论都有User_id行,
我想通过每个评论和关系来获得用户。
我在邮政模型中的评论方法
public function comments()
{
return $this->hasMany(Comment::class);
}
是什么是让用户发表评论的最佳方法?
最终结果:
{
'id': 1,
'title': 'some title',
'caption': 'some caption:,
'comments': [
{
'id': 1,
'text': 'some text',
'user_id': 1,
'user': { 'id':1, 'username': 'something', 'email': '[email protected] }
},
{
'id': 2,
'text': 'some text',
'user_id': 2,
'user': { 'id':2, 'username': 'something', 'email': '[email protected] }
},
]
}
I have a Post model:
$posts = Post::with('comments')->get();
and every comment has user_id row
I want to get the user with every comment, with relations.
My comments method in Post model
public function comments()
{
return $this->hasMany(Comment::class);
}
what is the best approach to get the user with comment?
final result:
{
'id': 1,
'title': 'some title',
'caption': 'some caption:,
'comments': [
{
'id': 1,
'text': 'some text',
'user_id': 1,
'user': { 'id':1, 'username': 'something', 'email': '[email protected] }
},
{
'id': 2,
'text': 'some text',
'user_id': 2,
'user': { 'id':2, 'username': 'something', 'email': '[email protected] }
},
]
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以将
与()
添加到模型关系中这样的
应该
是
you can add
with()
to the model relationshould be like this
please change the user to your model relation
I hope it's helpful
您可以在查询中执行此操作
You can do it in your query by