我在 cakephp 中做一个旅游系统,我有两种不同类型的最终用户,一种是管理员,另一种是注册用户,所以我需要为这些用户提供两种不同的视图,而且注册用户不应该访问任何控制器管理模块,
现在我不知道如何将这两个用户分开。
我在 cakephp 中做一个旅游系统,我有两种不同类型的最终用户,一种是管理员,另一种是注册用户,所以我需要为这些用户提供两种不同的视图,而且注册用户不应该访问任何控制器管理模块,
现在我不知道如何将这两个用户分开。
根据它的声音,您正在寻找的是前缀路由,它应该为您提供所需的一切。
您的 URL 可以由管理员添加前缀(如果适用于相关用户):
http://example.com/admin/posts
它被路由到(在 Posts 控制器中):
public function admin_index(){
...
}
呈现app/View/Posts/admin_index.ctp
视图。
我不会多说,因为该领域的文档非常详尽。请注意,如果您开始引入多于两个级别的权限(例如用户、超级用户、管理员),那么前缀路由并不适合。您需要查看框架也涵盖的访问控制列表。
大家好,我有另一种解决此线程的方法,即配置每个控制器。只需将以下代码放入您不想授予访问权限的控制器中
公共函数 beforeFilter(){
if($this->Auth->user('role')=='regular')
{
$this->Session->setFlash('You cannot access');<br>
$this->redirect(array('controller'=>'users','action' => 'index'));<br>
}
}
因此,如果有人以普通用户身份登录,他/她将重定向到用户控制器或您想要指定的任何其他