我在尝试提交表单时收到MethodNotAllowedException
。这是我的路线
Route::group(['middleware' => 'auth', 'prefix' => 'admin'], function () {
Route::resource('user', 'UserController');
Route::get('user/destroyMe/{destroyMe}', ['as' => 'user.destroyMe', 'uses' => 'UserController@destroyMe']);
Route::get('user/changeState/{id}', ['as' => 'user.changeState', 'uses' => 'UserController@changeState']);
});
以下是存储新用户的表单部分:
<div class="position-center">
<form role="form" id="tryitForm" class="form-horizontal" enctype="multipart/form-data"
method="POST" action="{{route('user.store')}}">
{!! Form::token() !!}
我在route:list
内检查过,我清楚地看到了user.store
指定的路线,路线上的方法是POST
。我无法弄清楚为什么我会得到例外?
修改
我确实安装了Laravel的AdminLTE Link,但我已经覆盖了它的路线。有人说每条其他路线都有效。
编辑2
我尝试制作手动路线:
Route::post('admin/user', 'UserController@store');
并将其发布到url('admin/user')
,但结果仍然相同?
编辑3
清除缓存也没有帮助。
编辑4
进一步检查后,当遇到不存在的随机路由时,我得到一个Sorry, the page you are looking for could not be found.
的错误标题,但是如果我执行了POST
个路由,我得到{{1} (两个错误都会触发相同的异常)。
Laravel日志为空
答案 0 :(得分:1)
我发现了一个导致所有麻烦的错误。在我的表格中有一行
<input name="_method" value="PUT" type="hidden">
它通过复制/粘贴我的edit
代码
答案 1 :(得分:0)
试试这样:
{!! Form::open( [ 'route' => 'user.store', 'method' => 'POST', 'files' => 'true' ] ) !!}
关闭它。
//
{{ Form::close() }}
修改 怎么样这样做:
在routes.php
Route::any('admin/user', 'UserController@form');
在controller
:
public function form(){
print_r(Input::get()); die; #Hope that you are using Input.
}