在RouteServiceProvider中,我有:
$router->bind('user', function ($value) {
return app(UserInterface::class)->findOrFail($value);
});
管理员的网址是"/admin/user/1"。
但对于前端 URL 是"/用户名/用户名"
所以我想检查这是"管理员"还是"前端"网址,对于管理员绑定用户,但对于前端不要绑定用户:
$adminRoute = //check if this is admin or frontend url ("/admin/user/1" or "/user/username")
if($adminRoute){
$router->bind('user', function ($value) {
return app(UserInterface::class)->findOrFail($value);
});
}else{
//nothing
}
附言。我不希望更改 findOrFail() 函数通过用户名查找用户,我想禁用非管理员 url 的绑定。
试试这个:
Route::group(array('prefix' => 'admin'), function() {
$router->bind('user', function ($value) {
return app(UserInterface::class)->findOrFail($value);
});
});