2017-03-18 56 views
0

尝试提交表单时,我得到MethodNotAllowedException。这里是我的路线不允许使用Laravel方法

Route::group(['middleware' => 'auth', 'prefix' => 'admin'], function() { 

    Route::resource('user', 'UserController'); 
    Route::get('user/destroyMe/{destroyMe}', ['as' => 'user.destroyMe', 'uses' => '[email protected]']); 
    Route::get('user/changeState/{id}', ['as' => 'user.changeState', 'uses' => '[email protected]']); 
}); 

,这里是形式与部分存储新用户:

​​

我内route:list检查,我很清楚有user.store命名路线和方法的航线是POST。我无法弄清楚为什么我会得到异常?

编辑

我确实有Laravel的AdminLTE安装Link,但我重写它的路由。针说,其他每条路线的作品。

EDIT 2

我试图使一个手动路线:

Route::post('admin/user', '[email protected]'); 

,并张贴到url('admin/user')但还是一样的结果呢?

编辑3

清除缓存也没帮助。

EDIT 4

经过进一步检查,打一个不存在的随机路由时,我得到一个错误报头Sorry, the page you are looking for could not be found.,但如果我做任何的POST路线,我得到Whoops, looks like something went wrong.(包括尽管如此,错误也会触发相同的异常)

Laravel日志为空

+0

哪个路线user.store路线我看不到? – Araz

+0

并且我也看不到路线中的Route :: post? – Araz

+0

'Route:resource'正在制作所有默认路由 – Norgul

回答

1

我发现了错误causi所有的麻烦。在我的形式有一个线

<input name="_method" value="PUT" type="hidden"> 

它潜入有通过复制/粘贴我edit代码

0

试试这样说:

{!! Form::open([ 'route' => 'user.store', 'method' => 'POST', 'files' => 'true' ]) !!} 

,并做其关闭。

 // 
{{ Form::close() }} 

编辑: 如何做这种方式:

routes.php

Route::any('admin/user', '[email protected]'); 

而在controller

public function form(){ 
    print_r(Input::get()); die; #Hope that you are using Input. 
} 
+0

这是使用包编写它的另一种方法。同样的结果很不幸 – Norgul

+0

@Norgul用一种新方法编辑这个。 –

+0

这是输出Array [[_token] => GS8E6Jx9Xrs2B97qa8VmRquuCdTc259aecdrJdrd [name] => Tyler Clay [email] => [email protected] [role_id] => 7 [equipment] => Array([0] => 2 [1] => 3 [2] => 4)[supervisor] => Array([0] => 2 [1] => 4)[_method] => PUT [save] =>保存)它正在击中路由 – Norgul