我创建了一个slug页面如下:
// Create pages table for dynamic pages
id | slug | title | page_template
0 about about us about.blade
1 contact contact us contact.blade
Run Code Online (Sandbox Code Playgroud)
我将通过以下路径访问它们:
// could be page/{slug} or only slug inside routes.php
Route::get('/{slug}', array('as' => 'page.show', 'uses' => 'PageController@show'));
Run Code Online (Sandbox Code Playgroud)
我有一个PageController,所以这允许我动态创建页面.在这里提到解决方案:Laravel从Mysql数据库创建动态路由到控制器
我还有角色表:
// Create roles table for
id | name
0 user
1 admin
Run Code Online (Sandbox Code Playgroud)
我还有另一张表允许:
// permission table
role_id | page_id
0 0
0 1
1 1
Run Code Online (Sandbox Code Playgroud)
这将帮助我设置每个角色类型的权限,例如,如果您是一个用户,您只能访问有关页面,如果您是管理员,您可以访问所有页面等.
我的问题是:我怎么能实现这一点,我是否在我的路线中添加一个过滤器,检查用户是否可以访问该段页面?所以我在routes.php或filters.php里面这样做?如何?
谢谢您的帮助