获取所有控制器和放大器来自Laravel 5.2

时间:2016-02-10 19:19:38

标签: php laravel laravel-5.2

我刚刚开始使用Laravel。我希望使用路线和途径获得所有可能的路线。在那些他们要去控制器的路线上。我想知道他们正在使用什么方法。

我希望自动获取我在App/Http/Controllers创建的控制器的所有路径。

我想为不同的用户级别(动态)创建权限系统,因此管理员可以轻松创建具有不同权限的不同用户。

有什么方法可以做到这一点吗?

我想这样显示:

1)我的resources/views/users/premissions.blade.php中会有一个页面。

2)所有提到的控制器都有个人名称及其方法,如:

PagesController

  • [复选框]查看
  • [复选框]创建
  • [复选框]显示
  • [复选框]更新
  • [复选框]销毁

PostsController

  • [复选框]查看
  • [复选框]创建
  • [复选框]显示
  • [复选框]更新
  • [复选框]销毁

3)然后,用户将选中该复选框以向用户提供权限。从上面的控制器。

谢谢!期待获得解决方案。

1 个答案:

答案 0 :(得分:1)

我不了解您要实现的目标,但您可以使用Route::getRoutes()获取所有路线。

未在5.2中测试,但应该开展工作。

    foreach (Route::getRoutes() as $Route) {
        $Routes[] = [
            'methods' => $Route->getMethods(),
            'path' => $Route->getPath(),
            'action' => $Route->getActionName(),
        ];
    }