2014-12-03 3 views
0

До сих пор мы были предоставления и отказа в доступе к некоторым представлениям следующим образом:Предоставление и отказ в доступе к некоторым представлениям в CakePHP

public function beforeFilter() { 
    parent::beforeFilter(); 
    $this->Auth->deny('add','edit','index','view', 'delete', 'translate'); 
} 

Он работал отлично, но теперь, как требования изменились, мы необходимо сделать условный фильтр и дать соответствующее сообщение. Он должен взять роль пользователя, которую можно получить в $ user ['role'], а затем в зависимости от действия он должен предоставить/отклонить его с предоставлением соответствующего сообщения.

Любая помощь или руководство очень ценятся.

+0

Вы всегда можете использовать ACL. [ACL CakePHP] (http://book.cakephp.org/2.0/en/tutorials-and-examples/simple-acl-controlled-application/simple-acl-controlled-application.html) – walkingRed

ответ

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

T шляпа.

Смежные вопросы