我声明了如下资源路由
Route::resource('{slug}/user','ManageUsersController'(;
这给了我一条路线
{slug}/user/{id}
其中 slug 是公司名称的 slug,id 是用户的特定 ID。
鉴于此,我声明了锚标签:<a href=user/{!! $user->id!!}
>用户</a>
这会将我定向到管理用户控制器中的函数show
public function show($id)
{
return $id;
}
但返回结果是slug
,而不是用户的id。我的网址project/company-name/user/5
我哪里出错了? 如何获得用户 ID 作为回报而不是 slug ?
-感谢
你必须在你的方法中同时捕获slug和id,所以你的方法会喜欢
public function show($slug, $id)
{
//for slug
return $slug;
//for id
return $id;
}
将这两个参数传递给控制器方法,因为Laravel会将第一个参数视为路由中的第一个参数(这将是您的slug(。