【发布时间】:2021-05-24 18:53:28
【问题描述】:
我正在构建一个 Laravel 8 api。我正在尝试为/api/access-type/{access_type} 设置表演路线。我想将{access_type} 更改为{id}
这是路由定义:
Route::middleware(['auth:api'])->group(function () {
/////////// not allowed to use these. Creating/deleting these resources would require code changes
Route::apiResource(
\App\Http\Controllers\AccessTypeController::$uri,
'AccessTypeController'
)->only(['index', 'show'])->parameters(['access_type' => 'id']);
});
当我查看列出的路线时,我可以看到路线没有改变:
GET|HEAD | api/access-types/{access_type} | access-types.show | App\Http\Controllers\AccessTypeController@show | Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful | Illuminate\Routing\Middleware\ThrottleRequests:api | Illuminate\Routing\Middleware\SubstituteBindings | App\Http\Middleware\Authenticate:api
如果我使用邮递员访问/api/access-types/3,我可以看到没有$request->id 变量,但是有一个$request->access_type 变量,所以覆盖不起作用。我究竟做错了什么?这应该根据:docs
【问题讨论】:
-
你可以试试
['access_types' => 'id'] -
嗨@Remul,运气不好