我在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']
))
未生成网址plastic-surgeon/slug
- 而是生成网址users/profile/slug
。
Router::url()
可以在网站的不同位置正常工作,例如在视图中生成站点地图。因此我想我需要从shell脚本导入一些东西,或者可能无法从shell脚本加载routes.php
中包含的数据?
(我正在使用CakePHP 1.3)
答案 0 :(得分:3)
如果您想导入路线,请尝试
config('routes');