我正在尝试用这段代码将路由实现到我的bootstrap文件中;
protected function _initRoutes() { $router = $this->getResource('frontController')->getRouter(); $router->addRoute( 'profil',new Zend_Controller_Router_Route ( 'profil/:username',array ( 'controller' => 'users','action' => 'profil' ) ) ); }
但它不起作用,因为我在’错误中的非对象上调用成员函数getRouter().
如何从bootstrap获取控制器?
我相信你的问题在于你在哪里打电话
$this->getResource('frontController')->getRouter()
FrontController资源尚未初始化.
我以这种方式调用了相同的方法(这在Zend Framework 2.0中不起作用,但现在可以工作):
Zend_Controller_Front::getInstance()->getRouter();
或者,您可以确保您的前端控制器已初始化为:
$this->bootstrap('FrontController'); $front = $this->getResource('FrontController');
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。