【发布时间】:2017-07-09 21:31:02
【问题描述】:
我正在使用 codeigniter 开发后端管理面板,在管理面板中有多个用户角色,如管理员、编辑器、经理等。 现在我为每个角色创建了多个控制器,例如:
- 控制器/Admin.php
- 控制器/Editor.php
- 控制器/Manager.php
所以,URL变成了这样
- www.mysite.com/admin/anyfunction
- www.mysite.com/editor/anyfunction
- www.mysite.com/manager/anyfunction
但我想要这些网址
- www.mysite.com/u/anyfunction
- www.mysite.com/u/anyfunction
- www.mysite.com/u/anyfunction
【问题讨论】:
-
您是否希望所有 URL 的网站后都有字母“u”?
-
你需要合并你的控制器或者有不同的URL...
-
'u' 不推荐,我只是想隐藏控制器名称
-
您可以在每个控制器的顶部放置一个重定向,以检查用户是否具有访问该控制器的正确角色,如果没有,则将它们重定向到适当的控制器,例如 Admin.php在你的函数
if($user->editor) {redirect('editor/index')}和if($user->manager) {redirect('manager/index')}中,最终我建议你找到一个不同的结构,尽管它不需要所有这些重定向 -
好的,我应该使用哪种结构?
标签: codeigniter url routes