我有一个 CakePHP 1.3 shell,它需要使用 requestAction() 从单独的控制器生成 HTML。该调用的 URL 是使用以下命令生成的:
$url = Router::url(array('controller' => 'my_controller', 'action' => $action_str));
$data = array('url' => array('ext' => 'json'),
'return' => 'return',
'pass' => array('an_id_str' => $an_id));
$action_str、'an_id_str' 和 $an_id 是我的代码中唯一在调用之间发生变化的东西,并且 requestAction() 是这样调用的:
$this->requestAction($url, $data);
注意:由于 $action_str 可以为每个调用更改,它会为每个单独的 requestAction() 调用生成新的 $url。
第一次调用 requestAction() 时,效果很好。我第二次调用 requestAction() 时,它会抛出以下错误:
"Error: Missing Controller 'c:\...\cake\console'"
有什么想法可能导致路由器搞砸了,我该如何解决?
注意——这实际上发生在几个使用类似功能的不同 shell 中。