到目前为止,我们一直在通过以下方式授予和拒绝访问某些视图:
public function beforeFilter() {
parent::beforeFilter();
$this->Auth->deny('add','edit','index','view', 'delete', 'translate');
}
它工作得很好,但现在随着需求的变化,我们需要做一个条件过滤器并给出适当的信息。它应该取得用户的角色,可以获得$ user ['role'],然后根据行动它应该通过提供适当的消息来授予/拒绝它。
非常感谢任何帮助或指导。
答案 0 :(得分:2)
例如, 用户的角色是买家&的卖方强>
卖方可以执行以下操作添加,更新& 删除&买家可以执行以下操作查看,翻译
public function beforeFilter() {
parent::beforeFilter();
if($user['role'] == 'buyers') {
$actions = array('view','translate');
} else {
$actions = array('add','update','delete');
}
$this->Auth->deny($actions);
}
有关详细信息,请转到link
那就是它。
答案 1 :(得分:0)
您还可以在这里查看ACL,这是关于cakephp中ACL的简短教程
http://mark-story.com/posts/view/auth-and-acl-an-end-to-end-tutorial-pt-1