Я создаю приложение на основе профиля. Я пытаюсь использовать простой учебник по администрированию acl, который можно найти здесь: http://book.cakephp.org/2.0/en/tutorials-and-examples/simple-acl-controlled-application/simple-acl-controlled-application.html, чтобы создать мои группы и разрешения. У меня возникли проблемы с получением разрешений для работы при входе в систему как разные пользователи. У меня есть администратор, менеджер и группа пользователей. Я установил ACOs и AROs, а также добавил разрешения для каждой группы. Вот мойCakePHP Acl контролируемое приложение не выполнено ARO/ACO lookup - Разрешения не регистрируются
class AppController extends Controller {
public $components = array(
'Acl',
'Auth'=>array(
'loginRedirect'=>array('controller'=>'users', 'action'=>'index'),
'logoutRedirect'=>array('controller'=>'users', 'action'=>'index'),
'authError'=>'You cannot access that page',
'authorize'=>array('actionPath' => 'controllers')
),
'Session'
);
public function isAuthorized($user) {
return true;
}
public function beforeFilter() {
$this->Auth->authorize = array(
'Actions' => array(
'userModel' => 'User',
'actionPath' => 'users'
)
);
$this->Auth->allow('display');
$this->set('logged_in', $this->Auth->loggedIn());
$this->set('current_user', $this->Auth->user());
}
}
UserController.php
class UsersController extends AppController {
public function beforeFilter() {
parent::beforeFilter();
$this->Auth->allow('view');
}
public function login() {
if ($this->request->is('Post')) {
if ($this->Auth->login()) {
$this->redirect($this->Auth->redirect());
} else {
$this->Session->setFlash('Your username/password combination was incorrect');
}
}
}
public function logout() {
$this->redirect($this->Auth->logout());
}
ошибка, что я получаю прямо сейчас:
Warning (512): DbAcl::check() - Failed ARO/ACO node lookup in permissions check. Node references:
Aro: Array
Permission::check() - CORE/Cake/Model/Permission.php, line 94
DbAcl::check() - CORE/Cake/Controller/Component/Acl/DbAcl.php, line 73
AclComponent::check() - CORE/Cake/Controller/Component/AclComponent.php, line 109
ActionsAuthorize::authorize() - CORE/Cake/Controller/Component/Auth/ActionsAuthorize.php, line 40
AuthComponent::isAuthorized() - CORE/Cake/Controller/Component/AuthComponent.php, line 412
AuthComponent::startup() - CORE/Cake/Controller/Component/AuthComponent.php, line 336
ObjectCollection::trigger() - CORE/Cake/Utility/ObjectCollection.php, line 132
call_user_func - [internal], line ??
CakeEventManager::dispatch() - CORE/Cake/Event/CakeEventManager.php, line 248
Controller::startupProcess() - CORE/Cake/Controller/Controller.php, line 671
Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 184
Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 162
[main] - APP/webroot/index.php, line 109
По какой-то причине он не может получить доступ разрешения. И я не могу найти решение, чтобы исправить это. Любая помощь будет замечательной! Заранее спасибо!