1

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路由,我会得到Whoops, looks like something went wrong.(虽然两个错误都会触发相同的异常)。

Laravel 日志为空

4

2 回答 2

1

我发现了一个导致所有麻烦的错误。在我的表格里面有一条线

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

它通过复制/粘贴我的edit代码潜入那里

于 2017-03-18T14:38:58.420 回答
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.
 }
于 2017-03-18T07:50:40.530 回答