Laravel缺少必需的参数

时间:2019-09-21 18:18:17

标签: php laravel parameters routes

我试图用一个使用id参数的控制器创建一个新的路由,并链接到它。 错误是当我尝试创建到控制器的链接时。 我得到的错误是:

  

“缺少[Route:notas.detalle] [URI:detalle / {id}]所需的参数。(查看:/var/www/html/laravel/blog/resources/views/producto.blade.php)”

路线:

Route::get('detalle/{id}', 'productoController@detalle')>name('notas.detalle');

刀片模板:

@foreach($notas as $nota)
    <a href="{{ route('notas.detalle'), $nota }}">{{$nota->id}}</a>
    {{$nota->created_at}}
    {{$nota->updated_at}}
@endforeach

可能是什么问题?

2 个答案:

答案 0 :(得分:0)

问题在于变量必须在逗号后。 我认为这会起作用:

<a href="{{ route('notas.detalle', $nota->id) }}">{{$nota->id}}</a>

答案 1 :(得分:0)

Laravel路由助手可以将带有所有键(require参数)及其值的关联数组作为第二个参数。

您的情况就是这样

route('notas.detalle', ['id' => 1])

但是它可能是多个参数,所以您的路线是否有类似'notas / {id} / student / {student}

的内容

然后您可以执行以下操作。

route('notas.detalle', ['id' => 1, student => 129483])

这是指向文档的链接,您可以在其中查看更多详细信息。 https://laravel.com/docs/5.8/routing#named-routes