У меня есть скрипт на app/vendors/shells
, который периодически выполняется через cron.В этом сценарии я импортирую Router
:
class AutosuggestFileShell extends Shell {
var $uses = array('User','Country','City','Speciality','Alias');
function main() {
App::import('Core', 'Router');
//...
Но сценарий не использует маршруты, которые я определил в routes.php
.Например, я определил:
Router::connect('/plastic-surgeon/*', array(
'controller' => 'users', 'action' => 'profile'
));
Но в скрипте строка:
'path' => Router::url(array(
'controller' => 'users', 'action' => 'profile', $user['User']['slug']
))
не генерирует URL plastic-surgeon/slug
- вместо этого генерируется URL users/profile/slug
.
Router::url()
отлично работает в разных точках сайта, например, в представлении для создания карты сайта.Поэтому я предполагаю, что мне нужно импортировать что-либо из сценария оболочки, или, возможно, невозможно загрузить данные, содержащиеся в routes.php
, из сценария оболочки?
(я использую CakePHP 1.3)