我刚刚启动laravel,我正尝试为practive创建一个简单的发布表单,提交后会出现419错误,因此我在表单内部使用了@csrf。
HTML表单:
<form method="POST" action="/posts">
@csrf
<input type="text" name="title" placeholder="Enter Title">
<input type="submit" name="submit">
</form>
路线:
Route::resource('/posts', 'PostController');
存储功能:
public function store(Request $request)
{
//
$post = new Post;
...
$post->save();
return redirect('/posts'); //Tried
return redirect()->route('posts.index');
}
@csrf修复了419错误,并完成了发布工作。 仅当没有redirect()时,Post才起作用。我认为@csrf使redirect()无法正常工作。 我一直在搜索,找不到解决方案。我该如何解决?
答案 0 :(得分:0)
用action="{{ route('posts.store') }}"
代替action="/posts"
制作return redirect()->route('posts.index')
;