我有Comment
这个属于关系的模型。
class Comment extends Model
{
public function user()
{
return $this->belongsTo('App\User');
}
}
在我的控制器中:
public function store(Request $request)
{
$comment = $this->dispatch(
new StoreCommentCommand($request->body, Auth::user()->id, $request->post_id)
);
return $comment;
}
当我返回$comment
时,我也想要嵌套的用户对象,我该怎么做?
答案 0 :(得分:2)
您需要在Builder对象上使用with()
,而目前您正在使用eloquent对象。这将是您的工作代码。
return Comment::with('user')->where('id', $comment->id)->first();
答案 1 :(得分:1)
急切加载......
return $comment->with('user');
答案 2 :(得分:0)
如果有人偶然发现这一点,您可以在返回评论之前将用户分配给评论。
$comment->user = Auth::user()
return $comment
此处不需要 with
急切加载功能。