如何在Laravel中建立雄辩的关系?

时间:2018-08-07 15:37:49

标签: php laravel eloquent

我正在Laravel中创建一个应用程序,该应用程序具有3个相互关联的模型。

我在路由时遇到问题,根据ID显示特定类别。我喜欢这样:

Route::apiResource('/categories', 'Core\CategoryController');

Route::prefix('categories')->group(function() {
    Route::apiResource('/{category}/sub_categories', 'Core\SubCategoryController');

    Route::prefix('sub_categories')->group(function() {
        Route::apiResource('/{sub_category}/sub_sub_categories', 'Core\SubSubCategoryController');
    });
});

我能够做http://localhost:8080/api/categories/3/sub_categories。但是,我无法执行http://localhost:8080/api/categories/3/sub_categories/1/sub_sub_categories。我无法获取类别的ID并将其显示在url中。我能做的是-> http://localhost:8080/api/categories/sub_categories/1/sub_sub_categories

那么,如何显示该URL中的类别ID?

我尝试过:

Route::prefix('/{category}/sub_categories')->group(function() {
    Route::apiResource('/{sub_category}/sub_sub_categories', 'Core\SubSubCategoryController');
});

但是,这没有按预期进行。

1 个答案:

答案 0 :(得分:0)

您可以这样做

Route::prefix('categories')->group(function() {
    Route::apiResource('/{category}/sub_categories/{sub_category}/sub_sub_categories', 'Core\SubSubCategoryController');
    Route::apiResource('/{category}/sub_categories', 'Core\SubCategoryController');
});