gpt4 book ai didi

laravel - Laravel 6.x 中的 URL 操作生成器

转载 作者:行者123 更新时间:2023-12-05 06:22:37 26 4
gpt4 key购买 nike

更新到 Laravel 6.4 后,我收到了一个非常奇怪的错误。我错过了什么吗?

不起作用

{{ action('Admin\OfferController@post', ['id'=>$offer->offer_id,'post'=>0]) }}

有效

{{ action('Admin\OfferController@post', [$offer->offer_id, 0]) }}

错误

Missing required parameters for [Route: offers.edit]

最佳答案

Laravel 6.3(大概吧,我认为)使 Action url 生成器更加严格,如果你正在命名参数(即 'id'=> 0)那么你必须确保该名称与路由定义中参数的名称完全匹配。

您可以使用 php artisan route:list 并查找您尝试发布到的路由来找到所需参数的名称。在这种情况下,我怀疑它应该是 'offer' => $offer->offer_id 而不是 'id' => $offer->offer_id 但只有当你生成使用 route::resource 方法的路由。

例如。在我目前正在开发的应用程序中,我有以下内容

Route::resource('/articles', 'ArticlesController');

生成以下用于更新文章的路由

PUT /articles/{article}

所以要使用操作 URL 生成器,我必须执行以下操作

action('ArticlesController@update', ['article' => $article->id])

第二个示例起作用的原因是,如果您没有告诉它第一个变量的名称,URL 生成器会假定第一个参数满足生成路由所需的参数。

关于laravel - Laravel 6.x 中的 URL 操作生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59107698/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com