我正在使用vue js处理laravel评论系统,并在执行axios请求时遇到问题。我需要收到一个数组作为回复,包含帖子的所有评论,但我想将用户数据添加到此数组,以获取用户名和其他用户详细信息。
public function show($id)
{
$comments = Post::find($id)->comments;
return $comments;
}
电流:
[{ “ID”:35, “USER_ID”:1, “POST_ID”:4 “PARENT_ID”:0 “commenttext”: “测试”, “created_at”:空 “的updated_at”:空}]
我需要的是:
[{ “ID”:35, “USER_ID”:1, “POST_ID”:4 “PARENT_ID”:0 “commenttext”: “测试”, “created_at”:空 “的updated_at”:空, “用户”:[此处的用户数据]}]
答案 0 :(得分:0)
使用嵌套预先加载。
$comments = Post::with('comments.user')->where('id', $id)->first()->comments;
那应该以{{1}}关系检索所有评论。
user
或者我相信你也可以这样做。 (懒惰的渴望加载)
foreach($comments as $comment)
{
echo $comment->user->id;
}