1

我正在使用 Laravel 5.1 和 Dingo/Api。有没有办法在其中获取路由前缀?我尝试了 getLastGroupPrefix() 但它总是返回 null

这是我的代码

基础控制器:

public function isAdminRequest()
    {
        return Route::getLastGroupPrefix();
    }

路线:

$api->group(array('prefix' => 'admin'), function($api)
    {
        $api->resource('users', "App\Http\Controllers\UsersController");
    });

我正在尝试通过这样做在我的 UsersController 中使用它

    public function index()
    {
        return $this->isAdminRequest();
    }

但我只是得到一个空白页。

4

2 回答 2

0

如果要获取组的前缀,请将函数更改为如下所示:

public function isAdminRequest(\Illuminate\Http\Request $request)
{
    return $request->route()->getPrefix();
}

这将返回“admin”,因为这是组的前缀。

于 2015-10-30T08:41:06.943 回答
0

好的,对于临时解决方案,我已经完成了

public function isAdminRequest()
{
    $uri = Route::current()->uri();
    $uri = explode('/',$uri);
    if($uri[2] == "admin")
        return true;
    return false;
}

我知道非常糟糕的解决方案。但等待更好的。直到那时。(如果它对任何人有用)

于 2015-10-30T11:02:48.570 回答