我有一个表格帖子设置, csrf_field()包括:
<form method="post">
{{ csrf_field() }}
...
<button type="submit" class="btn btn-xs btn-space btn-primary">Save and finish</button>
</form>
在我的路线中,我已适当地设置了所有内容:
Route::get('/assess/{room_name}/{subject_selected}/{unit_selected}/{outcome_selected}', 'AssessmentHandler@step_6_assess');
Route::post('/assess//{room_name}/{subject_selected}/{unit_selected}/{outcome_selected}', 'AssessmentHandler@step_6_save');
控制器中的功能已经定义,一切都应该正常工作。
但是,当我提交表单时,我收到此错误消息:
Symfony \ Component \ HttpKernel \ Exception \ MethodNotAllowedHttpException没有消息
之前我没有看过这条消息,也不知道在我的特定实例中是从哪里触发的。我读过的关于这个特定错误的所有搜索结果都谈到了从GET更改为POST或确保CSRF保护到位,但这不是我的问题。
使用Dev工具,它显示405错误(Method Not Allowed)。
知道这里可能会发生什么吗?
答案 0 :(得分:-1)
尝试将{{ csrf_field() }}
替换为@csrf
。
帖子网址中还有2个斜杠:Route::post('/assess//{room_name}
确保您重定向到正确的页面。
也许您可以在控制器中向我们展示代码。
您的控制器真的是AssessmentHandler
而不是AssesmentHandlerController
吗?