由资源控制器处理的删除不起作用 - Laravel 5.3

时间:2016-09-02 22:07:20

标签: php laravel controller

我在Laravel 5.3中使用资源控制器,而且我在删除记录时遇到问题。我想使用简单的HTML代码,我知道我必须添加一个隐藏的方法输入才能使其正常工作。

我的代码非常简单:

<form action="{{ url('/task', $task->id) }}">
    {{ method_field('DELETE') }}
    <input type="submit" value="Delete" />
</form>

点击提交应用重定向到空白页后 - 它不会去控制器中的销毁功能。我不知道,为什么它不起作用。我没有使用外墙,这样的操作是否必要?我很高兴每一个小费,谢谢。

1 个答案:

答案 0 :(得分:0)

您最有可能遇到TokenMismatchException。 Laravel认为DELETE方法是一种“可写”方法,因此它需要一个CSRF令牌。

您可以在表单中添加CSRF令牌,或者,如果合适,您可以将URI添加到except文件中的app/Http/Middleware/VerifyCsrfToken.php数组。

要将令牌添加到表单:

<form action="{{ url('/task', $task->id) }}">
    {{ method_field('DELETE') }}
    {{ csrf_field() }}
    <input type="submit" value="Delete" />
</form>