Я пытаюсь выяснить ACL, и поэтому я пытаюсь проработать учебник в книге (кстати, Cake 1.3).
Я создал таблицы базы данных (aros, экос, aros_acos).Однако, как только я пытаюсь включить компонент Acl в свой AppController, я получаю фатальную ошибку при попытке получить доступ к любой странице:
Неустранимая ошибка (256): ConnectionManager :: getDataSource - Несуществующие данныеsource [CORE / cake / libs / model / connection_manager.php, строка 102]
В моем AppController:
public $components = array('Auth','Session','RequestHandler','Acl');
Удаление Acl из массива компонентов заставляет все работать снова.
Ошибки исчезают, когда я закомментирую некоторый код в моем AppController.Вот код - закомментированные строки являются виновниками.AppModel :: slugList () - это пользовательская функция, которая просто выполняет поиск, основанный на слаге.Работает нормально, по крайней мере, пока не включен Acl.
if ($this->modelClass != 'Country'){
$this->loadModel('Country');
}
if ($this->modelClass != 'Category'){
$this->loadModel('Category');
}
$this->Session->write('Country',1);
$this->Session->write('City',1);
$_countryId = $this->Session->read('Country');
//$_countries = $this->Country->slugList();
$_cityId = $this->Session->read('City');
//$_cities = $this->Country->City->slugList();
Редактировать - также появляются три уведомления:
Notice (8): Trying to get property of non-object [CORE/cake/libs/model/datasources/dbo_source.php, line 813]
Notice (8): Trying to get property of non-object [CORE/cake/libs/model/datasources/dbo_source.php, line 838]
Notice (8): Trying to get property of non-object [CORE/cake/libs/model/datasources/dbo_source.php, line 841]