php – Zend_Rest_Route不适用于子目录控制器(例如admin / questions)

前端之家收集整理的这篇文章主要介绍了php – Zend_Rest_Route不适用于子目录控制器(例如admin / questions)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试为子目录控制器定义RESTful路由.我希望能够在admin / questions / *上为网址创建路由.我的控制器是Admin_QuestionsController:
- application
  - controllers
    -Admin
      QuestionsController.PHP (class Admin_QuestionsController)

下面是我为这个控制器声明我的RESTful路由的方法

$restRoute = new Zend_Rest_Route($front,array(),array(
    'admin' => array('questions')
));
$router->addRoute('rest',$restRoute);

..从文档中我看不出我做错了什么 – http://framework.zend.com/manual/1.12/en/zend.controller.router.html#zend.controller.router.routes.rest.但是,我收到以下错误

Invalid controller specified (admin)

当我声明然后不是Rest路线时,我可以让路线工作:

$router->addRoute('admin_questions',new Zend_Controller_Router_Route( '/admin/questions',array(
        'controller' => 'Admin_Questions','action' => 'index')
    )
);

..所以我不认为我的文件夹结构错误,或类名.但是,我需要RESTful路线,这是我无法实现的.

如您已定义的Zend_Rest_Route路由,如果启用了Zend模块,则可以正常工作.该文档提到“将HTTP方法和URI转换为模块,控制器和操作”.要启用模块,请在application.ini中添加以下两行:
resources.modules[] =
resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"

然后在名为admin / controllers的application / modules中创建一个目录,并在application / modules / admin / controllers / QuestionsController.PHP中创建QuestionsController.

应用程序的其余部分(希望)仍可用作默认模块.

猜你在找的PHP相关文章