1

我正在做一个 Laravel 7 项目。在我的项目中,我正在做路由模型绑定。但它不起作用,并且路径中的模型总是返回 null。这是我到目前为止所做的。

我声明一条路线

Route::put('restaurant-category/{category}', 'RestaurantCategoryController@update')->name('restaurant-category.update');

如您所见,模型绑定有一个占位符 {category}。

这是我在控制器中的操作。

public function update(RestaurantCategory $category, UpdateRestaurantCategoryRequest $request)
    {
        //here $category is always null even if I passed the valid category id.
    }

在 action 方法中,$category 始终为 null,即使我为它传递了正确的 id。我的代码有什么问题,我该如何解决?

4

2 回答 2

0

我不知道这是否对任何有类似问题的人有帮助,但我已经正确设置了所有内容,但仍然无法正常工作。

我的问题是由于某种原因分组路由没有使用“绑定”中间件。当我将“绑定”中间件添加到我的组时,我又开始工作了。请记住,我在我的 Kernel.php 中正确设置了它,但由于某种原因它没有被使用。

把它留在这里以防它发生在其他人身上

于 2021-09-22T11:19:24.820 回答
0

首先你要下单,控制器方法是先Request $request,然后是模型注入:

public function update(UpdateRestaurantCategoryRequest $request, RestaurantCategory $category)
    {
        //here $category is always null even if I passed the valid category id.
    }
于 2020-08-05T13:51:08.993 回答