为了账号安全,请及时绑定邮箱和手机立即绑定

此路由不支持 GET 方法。支持的方法:PUT.in laravel

此路由不支持 GET 方法。支持的方法:PUT.in laravel

PHP
慕姐8265434 2022-07-02 17:00:54
这是我使用 PUT 方法的表单,但它给了我一个错误此路由不支持 GET 方法。支持的方法:PUT。<form action="{{ route('accounts.update', $user->id) }}" method="put" role="form" name="_method">     @csrf     @method('PUT')     <div class="form-group row">        <label for="balance" class="col-md-4 col-form-label text-md-right">{{ __('Enter Client\'s Balance  :') }}</label>        <div class="col-md-6">          <input id="balance" type="text" class="form-control @error('balance') is-invalid @enderror" name="balance" value=""  autocomplete="balance" autofocus>        </div>     </div>     <div class="form-group row">        <label for="amount" class="col-md-4 col-form-label text-md-right">{{ __('Enter Client\'s Amount:') }}</label>        <div class="col-md-6">          <input id="amount" type="text" class="form-control @error('amt') is-invalid @enderror" name="amt" value="" required autocomplete="amt" autofocus>        </div>     </div>     <!-- /.card-body -->     <div class="card-footer text-center">        <button type="submit" class="btn btn-primary">Update Account</button>     </div></form>这是路由文件Route::get('/accounts/{id}/edit', 'AccountsController@edit')->name('accounts.edit');Route::put('/accounts/{id}', 'AccountsController@update')->name('accounts.update');
查看完整描述

3 回答

?
猛跑小猪

TA贡献1858条经验 获得超8个赞

<form action="{{ route('accounts.update', $user->id) }}" method="post">

              @csrf

              @method('PUT')


                    <div class="form-group row">

                        <label for="balance" class="col-md-4 col-form-label text-md-right">{{ __('Enter Client\'s Balance  :') }}</label>

                        <div class="col-md-6">

                            <input id="balance" type="text" class="form-control @error('balance') is-invalid @enderror" name="balance" value=""  autocomplete="balance" autofocus>

                        </div>

                    </div>

                    <div class="form-group row">

                        <label for="amount" class="col-md-4 col-form-label text-md-right">{{ __('Enter Client\'s Amount:') }}</label>

                        <div class="col-md-6">

                            <input id="amount" type="text" class="form-control @error('amt') is-invalid @enderror" name="amt" value="

                            " required autocomplete="amt" autofocus>

                        </div>

                    </div>

                <!-- /.card-body -->


                <div class="card-footer text-center">

                  <button type="submit" class="btn btn-primary">Update Account</button>

                </div>

              </form>


查看完整回答
反对 回复 2022-07-02
?
小唯快跑啊

TA贡献1863条经验 获得超2个赞

我认为您应该从表单标签中删除name="_method"属性,因为它由 laravel 保留用于隐藏输入

例子 :

<input type="hidden" name="_method" value="PUT"> // same as  @method('PUT')

请参阅:https ://laravel.com/docs/5.7/routing#form-method-spoofing


查看完整回答
反对 回复 2022-07-02
?
九州编程

TA贡献1785条经验 获得超4个赞

HTML 表单不支持 PUT/PATCH 方法。因此,当您想在 Laravel 中使用 HTML 表单执行 PUT/PATCH 操作时,您必须添加@method('put')并设置表单方法为method="post". 因此,您可以将代码更改为:


<form action="{{ route('accounts.update', $user->id) }}" method="post">

   @csrf

   @method('PUT')

   ....

</form>


查看完整回答
反对 回复 2022-07-02
  • 3 回答
  • 0 关注
  • 203 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号