Laravel route resource 能否使用另一个字段?

比如:我有一个user用户路由:

Route::resource('users', 'UserController', [    'only' => ['index', 'show', 'create', 'store', 'update', 'edit', 'destroy'],]);

那么我查看一个用户的资料时,URL是users/id这种形式,但我不希望使用ID(虽然user数据表主键是ID),而是使用用户名,也就是user/username,用resource方式的路由怎样写?

阅读 4.2k
2 个回答

试试这样

Route::resource('users', 'UserController', [ 'parameters' => ['users' => 'username'], 'only' => ['index', 'show', 'create', 'store', 'update', 'edit', 'destroy'],]);

没有验证过,看了一下文档,试一下看看

你应该要自己写一个route,然后username作为参数Route::get('/user/{user}','UserController@getUser');
然后在controllerpublic function getUser($user)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题