每当我传入两个或多个相互关联的参数时,我都会发现自己在控制器中做这样的事情。
例如,我有这样的路线:
Route::patch('user/{user}/post/{post}', 'PostController@update');
这导致了这样的事情:
public function update(User $user, Post $post, PostRequest $request)
{
if($user->id != $post->user_id) {
// return with error
}
// continue
}
有没有一种方法可以将关系验证放在PostRequest
-类中?
是的您可以重定向回错误。试试这个:
if($user->id != $post->user_id) {
return redirect()->back()->with('error', 'Something went wrong.');
}