Laravel 5 使用普通 HTML 更新表单

Laravel 5 update form using plain HTML

在 Laravel 5 中,我注意到每当我有一个用普通 HTML 书写的表格时,而不是使用 Form::open,它需要有一个隐藏的输入令牌字段。

<input type="hidden" name="_token" value="<?php echo csrf_token(); ?>" />

而对于更新记录的表单,则需要<input name="_method" type="hidden" value="PATCH">

在使用普通 HTML 编写表单时,我应该始终拥有这些字段是否正确?如果我仍然用普通的方式写它,还有其他方法吗?HTML?

是的,没错。对于 PATCH(以及基本上所有非 GET 或 POST 动词),除了使用 _method.

别无他法

这在文档的路由章节中有描述:Method Spoofing

但是您可以禁用 CSRF 保护。我并不是说您应该这样做,但如果您愿意,可以通过从 app/Http/Kernel.php

中的中间件数组中删除 Illuminate\Foundation\Http\Middleware\VerifyCsrfToken 来禁用它

这也在文档中:CSRF Protection