缺少[Route:building.floors][URI:building/{building}/flowers]所需



我需要你的帮助。如何使用route在以下href中写入?

我有以下路线:

Route::get('/building/{building}/floors', [BuildingController::class, 'floors'])->name('building.floors');

视图中,我有:

<td><a href="{{URL::to('/building/' . $building->id . '/floors') }}" class="link-primary">{{ $building->floors }}</a></td>

我试着用以下方式写

<td><a href="{{route('building.floors' , ['id' => $building->id])}}" class="link-primary">{{ $building->floors }}</a></td>

但我得到错误缺少[Route:building.floors][URI:building/{building}/flowers]所需的参数。

有人能帮帮我吗?

只是猜测,但['id' => $building->id]应该是['building' => $building->id]吗(因为building是路由中变量的名称(?

@Sarah您需要了解错误。

永远记住这一点Route::get('/building/{building}/floors', [BuildingController::class, 'floors'])->name('building.floors');这里{building}是您的动态参数名称,因此您需要在刀片中使用此路由的任何位置传递相同的参数{building}

如果路由是CCD_ 10,我们将使用id,因为我们将CCD_。

在这个代码/building/{building}/floors中,如果您的参数building表示building id,那么您必须在路由文件中使用一个正确且有意义的完整参数名称,如{building_id},并传递['building_id' => $building->id]作为building表示您的类/对象名称,并且您正试图将其属性id作为参数传递。这有助于避免混淆,其他开发人员也发现它很容易阅读和处理。

最新更新