Как создать ACO? - PullRequest
       44

Как создать ACO?

0 голосов
/ 30 марта 2011

Мне кажется, я до сих пор не поняла основы почти всего в CakePHP до Access Control Lists, сейчас я на 11.2.5 Создание ACO (объектов контроля доступа) и я не понимаюгде я должен поместить AclComponent методы:

   $this->Acl->Aco->create(array('parent_id' => null, 'alias' => 'controllers'));
   $this->Acl->Aco->save();

В каком файле я должен вставить этот код?

Должен ли я вставить в какое-то конкретное утверждение?
Не знаюЯ не понимаю, что именно делает эта строка, поэтому я не могу определить, где и когда она должна выполняться, что делает этот код и когда он должен работать?

Ответы [ 3 ]

0 голосов
/ 31 марта 2011

Эта страница в Поваренной книге дает вам очень хороший автоматизированный инструмент для создания ACO:

http://book.cakephp.org/view/647/An-Automated-tool-for-creating-ACOs

Если вы добавите функцию build_acl в AppController, вы можете запустить ее из любогоконтроллер, и он генерирует ваши ACO для вас.Это всегда работало очень хорошо в моих приложениях, использующих ACL.

0 голосов
/ 31 марта 2011

Идея создания записей ACO заключается в том, что если ваш проект завершен (то есть новые действия не созданы), вам больше не нужно ничего вставлять в таблицу данных acos. Эти методы предназначены для вызова один или только несколько раз.

Тогда вам решать, куда вы хотите поместить эти строки кода, так как в любом случае вы, вероятно, удалите их потом.

В качестве альтернативы, чтобы заполнить таблицу данных acos, вы также можете использовать этот плагин http://www.alaxos.net/blaxos/pages/view/plugin_acl, который автоматически обнаруживает новые действия и предлагает заполнить таблицу данных acos соответствующим образом.

0 голосов
/ 30 марта 2011

вы можете вставить это, где вам нужно для создания Aco-ов. в app_controller или в любом контроллере.

...