【问题标题】:MethodNotAllowedHttpException Error on Post LaravelPost Laravel 上的 MethodNotAllowedHttpException 错误
【发布时间】:2017-09-21 14:30:58
【问题描述】:

我在提交表单时收到“MethodNotAllowedHttpException”错误,但我不知道为什么。这是我使用 Laravel Collective 表单创建器创建的表单:

{!! Form::open(['url' => 'photographer/listing/store', 'method'=>'POST', 'files' => true]) !!}

    //Bunch of Form Inputs here:

    {!!Form::submit('Create Listing')!!}
    {!! Form::close() !!}

那么这是我的路线:

Route::post('photographer/listing/store', 'PhotographerController@storeListing');

最后,这里是控制器:

    class PhotographerController extends Controller
{
        public function storeListing(Request $request)
          {


            //Form Validation

            //Store in the database

            return redirect('/photographer');

          }

}

据我所知,当您对请求使用不正确的方法时会出现此错误,例如。 route 是一个 get where form 是一个帖子,但这里不是这样,所以我真的不知道发生了什么。

更新:我也在这里包含来自php artisan route:list 的相关信息:

 POST     | photographer/listing/store     |                           | App\Http\Controllers\PhotographerController@storeListing               | web,auth:photographer  
GET|HEAD | photographer                   | photographer.dashboard    | App\Http\Controllers\PhotographerController@index                      | web,auth:photographer 

【问题讨论】:

  • 尝试在表单中设置绝对网址。喜欢这个['url' => '/photographer/listing/store' ...]。我什至建议您使用name 您的路线并使用route(name) 给他们打电话。
  • 已经试过了,还是不行。
  • 尝试使用网址助手:'url' => url( 'photographer/listing/store')
  • @PeymanSeraj 感谢您的提示,但这也没有用。
  • 请尝试列出您的路线。 php artisan route:list 。你能看到你的路线吗?

标签: laravel laravel-5.4


【解决方案1】:

您是否检查过表单操作上的 URL 的正确位置?

我的猜测是以下行:

{!! Form::open(['url' => 'photographer/listing/store', 'method'=>'POST', 'files' => true]) !!}

没有指向您期望的相对 URL。尝试在 url 参数中添加正斜杠,如下所示:

{!! Form::open(['url' => '/photographer/listing/store', 'method'=>'POST', 'files' => true]) !!}

【讨论】:

    猜你喜欢
    • 2015-06-02
    • 2018-11-25
    • 2018-08-07
    • 2017-09-23
    • 2019-03-25
    • 2019-07-30
    • 2019-09-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多