Плагин контроллеров по умолчанию в CakePHP 2.0 - PullRequest
0 голосов
/ 26 октября 2011

Я изо всех сил пытаюсь заставить собственный плагин работать с контроллером по умолчанию:

например, в CakePHP 1.3 я мог бы создать плагин users и создать в нем users_controller, который автоматически становится контроллером плагинов,

Я мог получить доступ к методам пользовательского контроллера в плагине users через:

/users/add
/users/edit/1

Если я делаю то же самое в CakePHP 2.0, я получаю следующие ошибки:

Error: Users.AddController could not be found.
Error: Create the class AddController below in file: /home/richarda/www/test/cake_zero/www/app/Plugin/Users/Controller/AddController.php

Я могу получить к ним доступ по следующим ссылкам:

/users/users/add
/users/users/edit/1

Как ни странно, действие индекса по умолчанию работает, как и ожидалось, т.е.Я могу перейти на

/users

и увидеть индексное представление с контроллеров пользователей в плагине users.

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

Ответы [ 2 ]

0 голосов
/ 12 июля 2012

Я использую это в торт 2.2.0, и он работает для моего плагина под названием admin. Надеюсь, ты сможешь применить это в своей ситуации.

Router::connect('/admin/', array('plugin'=>'admin','controller'=>'groups','action'=>'index'));

0 голосов
/ 16 ноября 2011

Оказывается, маршрутизация по умолчанию для плагинов была отключена в CakePHP2.0

Вот билет, который я отправил: http://cakephp.lighthouseapp.com/projects/42648/tickets/2237-20-plugins-dont-have-a-default-controller#ticket-2237-3

Решение состоит в том, чтобы создать собственный маршрут:

Router::connect('/users/:action', array('controller'=>'users', 'plugin'=>'users');

И ты в порядке.

Надеюсь, это кому-нибудь поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...