【问题标题】:Symfony \ Component \ HttpKernel \ Exception \ MethodNotAllowedHttpException- laravel 5.7.28Symfony \ Component \ HttpKernel \ Exception \ MethodNotAllowedHttpException- laravel 5.7.28
【发布时间】:2020-06-22 01:20:31
【问题描述】:

当我单击删除按钮时,它会显示该错误。我无法找出问题所在。

路由.php

 Route::post('api/email/create', ['as' => 'email.create', 'uses' => 'Havence\AutoMailController@create']);
    Route::get('automail/mail',['as'=>'email.mail','uses' => 'Havence\AutoMailController@mail']);
    Route::get('automail/index',['as'=>'email.index','uses' => 'Havence\AutoMailController@index']);
    Route::get('automail/edit/{id}',['as'=>'email.edit','uses' => 'Havence\AutoMailController@edit']);
    Route::post('automail/delete/{id}',['as'=>'email.delete','uses' => 'Havence\AutoMailController@destroy']);

删除按钮功能

  <form  data-toggle="tooltip" title="Delete Template" data-placement="top" action="{{ route('email.delete', $mailTemplate->id) }}" method="POST">
    {{csrf_field()}}
    <input name="_method" type="hidden" value="DELETE">
    <button  type="submit" class="imgb col-md-3 text-center p-2"><img src="https://img.icons8.com/nolan/40/delete-forever.png" ></button>
</form>

控制器

 public function destroy($id)
    {
        $mailTemplates = Ticket::find($id);
        $mailTemplates->delete();

        return redirect('/index')->with('success', 'Ticket has been deleted!!');

    }

【问题讨论】:

  • 您能否提供重现错误的工作示例。 Git 或示例工作项目。可以简化且无需私人数据。

标签: javascript php jquery laravel


【解决方案1】:

改变这个因为你正在传递隐藏的_method

Route::post('automail/delete/{id}',['as'=>'email.delete','uses' => 'Havence\AutoMailController@destroy']);

Route::delete('automail/delete/{id}',['as'=>'email.delete','uses' => 'Havence\AutoMailController@destroy']);

【讨论】:

    猜你喜欢
    • 2019-07-01
    • 2018-09-06
    • 2019-01-06
    • 2021-06-10
    • 1970-01-01
    • 2014-11-20
    • 2019-04-11
    • 2018-06-21
    • 2018-03-25
    相关资源
    最近更新 更多