【问题标题】:Missing required parameters for [Route: admin.edit] [URI: customer/account/edit/{id}][Route: admin.edit] [URI: customer/account/edit/{id}] 缺少必需的参数
【发布时间】:2018-10-15 17:31:56
【问题描述】:

该表单操作是否需要为 ID 传递参数? 这是路由文件web.php

Route::get('/customer/account/edit/{id}',['as'=>'admin.edit','uses'=>'AdminController@edit']);

这里是视图文件create.blade.php

 <form action="{{ route('admin.edit') }}" method="POST">
                {{csrf_field()}}
                <div class="fieldset">
                   ........
                </div>
</form>

【问题讨论】:

  • 为什么不使用 post 路由来处理表单数据?
  • Route::getmethod="POST" 表示您的表单永远不会到达该路线。
  • 你的AdminController@editfunction edit (Request $request, $id) { } ?

标签: php laravel


【解决方案1】:

首先你需要将 router 设置为 post,如果 id 是可选参数,你需要像下面这样指定路由定义

Route::post('/customer/account/edit/{id?}',['as'=>'admin.edit','uses'=>'AdminController@edit']);

否则应该像下面这样

<form action="{{ route('admin.edit', ['id' => $id]) }}" method="POST">
                {{csrf_field()}}
                <div class="fieldset">
                   ........
                </div>
</form>

【讨论】:

    猜你喜欢
    • 2020-12-08
    • 2018-01-21
    • 2020-07-16
    • 2022-01-16
    • 2019-11-19
    • 2019-10-01
    • 2020-03-13
    • 1970-01-01
    • 2020-06-05
    相关资源
    最近更新 更多