【问题标题】:Route issue in required parameter value - Laravel所需参数值中的路由问题 - Laravel
【发布时间】:2021-03-22 21:30:49
【问题描述】:

路线代码

Route::get(
    '/product-{name}', 
    [
        ProductDetailsController::class, "showProductDetailsMainForm"
    ]
)->name("showProductDetailsMainForm");

用法

<a href="{!! route('showProductDetailsMainForm', 'name' => 'hello') !!}">

错误详情

缺少 [Route: showProductDetailsMainForm] 所需的参数 [URI: 产品-{name}]

我错过了什么吗?

【问题讨论】:

标签: laravel laravel-7 laravel-8


【解决方案1】:

对于单个参数,您可以这样定义(不提及参数名称):

{{ route('showProductDetailsMainForm', 'hello') }}

或者,提到参数名称:

{{ route('showProductDetailsMainForm', ['name' => 'hello']) }}

并将Route::get('/product-{name}',… 更改为Route::get('/product/{name}',…

【讨论】:

    【解决方案2】:

    试试

    Route::get(
        '/product/{name}', 
        [
            ProductDetailsController::class, "showProductDetailsMainForm"
        ]
    )->name("showProductDetailsMainForm");
    

    在视图中

    <a href="{{ route('showProductDetailsMainForm', ['name' => 'hello']) }}">
    

    【讨论】:

    • 你为什么使用{!!而不是{{任何具体原因
    • 您是否更改了答案中的路线定义?如果是这样,请运行一次 php artisan route:clearphp artisan view:clear 然后再试一次
    【解决方案3】:

    你应该使用route('showProductDetailsMainForm', ['name' =&gt; 'hello']);

    【讨论】:

    猜你喜欢
    • 2020-08-07
    • 2019-01-09
    • 2020-08-07
    • 2020-12-25
    • 1970-01-01
    • 2022-01-05
    • 1970-01-01
    • 2022-01-21
    • 2020-11-01
    相关资源
    最近更新 更多