【问题标题】:Missing required parameter for [Route: admin.request.update] [URI: admin/request/{request}] [Missing parameter: request][Route: admin.request.update] [URI: admin/request/{request}] [Missing parameter: request] 缺少必需参数
【发布时间】:2021-05-18 08:18:15
【问题描述】:

当我尝试访问 detail.blade.php 时出现错误,提示“缺少 [Route: admin.request.update] [URI: admin/request/{request}] [Missing parameter: request] 的必需参数."。我不知道我哪里做错了,因为我复制的步骤和代码与我的其他项目完全相同(编辑数据)。

这是我的 detail.blade.php :

 <form action="{{ route('admin.request.update', $requestStock) }}" method="POST">
                @csrf
                {{ method_field('PUT') }}
                <div class="form-group row">
                    <label for="name" class="col-sm-2 col-form-label">Name</label>
                    <div class="col-sm-10">
                        <textarea class="form-control" id="name" name="name" rows="3" readonly value="{{ $requestStock->name }}"></textarea>
                    </div>
                </div>
                <div class="form-group row">
                    <label for="status" class="col-sm-2 col-form-label">Complete</label>
                    <div class="col-sm-10">
                        <select class=" form-control" name="status" id="status">
                            <option name="status" value="1" {{ $requestStock->status == '1' ? 'selected' : ''}}> Not Completed </option>
                            <option name="status" value="0" {{ $requestStock->status == '0' ? 'selected' : ''}}> Complete </option>
                        </select>
                    </div>
                </div>
                <button type="submit" class="btn btn-secondary" style="margin-top: 20px; width: 100%">Update</button>
            </form>

这是我的 RequestPageController :

public function edit(RequestStock $requestStock)
{
    return view('admin.request.detail')->with([
        'requestStock' => $requestStock,
    ]);
}

public function update(Request $request, RequestStock $requestStock)
{
    $requestStock->status = $request->status;
    $requestStock->save();

    return redirect()->route('admin.request.index');
}

路线:

 Route::namespace("App\Http\Controllers\Admin")->prefix("admin")->name("admin.")->middleware('can:adminpage')->group(function () {
     Route::resource("/request", RequestPageController::class);
 });

谢谢。

【问题讨论】:

  • 请也发布您的路线。首先,尝试{{ route('admin.request.update', ['request' =&gt; $requestStock]) }}
  • @brombeer 我已经更新了我的问题,我也尝试了你的建议,但仍然遇到同样的错误
  • 使用 php artisan optimize:clear 清除路由缓存,然后再试一次

标签: php html css laravel


【解决方案1】:

尝试以下更改:

改变路线:

Route::namespace("App\Http\Controllers\Admin")->prefix("admin")->name("admin.")->middleware('can:adminpage')->group(function () {
     Route::resource("/request-stock", RequestPageController::class);
 });

已更改 RequestPageController:

public function edit(RequestStock $requestStock)
{
    return view('admin.request-stock.detail')->with([
        'requestStock' => $requestStock,
    ]);
}

public function update(Request $request, RequestStock $requestStock)
{
    $requestStock->status = $request->status;
    $requestStock->save();

    return redirect()->route('admin.request-stock.index');
}

【讨论】:

    猜你喜欢
    • 2021-04-29
    • 1970-01-01
    • 2021-06-21
    • 1970-01-01
    • 2021-03-10
    • 1970-01-01
    • 2021-06-30
    • 1970-01-01
    • 2020-03-13
    相关资源
    最近更新 更多