Php Zend_Rest_路由不适用于子目录控制器(例如管理员/问题)

Php Zend_Rest_路由不适用于子目录控制器(例如管理员/问题),php,zend-framework,Php,Zend Framework,我正在尝试为子目录控制器定义RESTful路由。我希望能够在admin/questions/*为url创建路由。我的控制者是管理员\u问题控制者: - application - controllers -Admin QuestionsController.php (class Admin_QuestionsController) $restRoute = new Zend_Rest_Route($front, array(), array( 'admin' =

我正在尝试为子目录控制器定义RESTful路由。我希望能够在
admin/questions/*
为url创建路由。我的控制者是管理员\u问题控制者:

- application
  - controllers
    -Admin
      QuestionsController.php (class Admin_QuestionsController)
$restRoute = new Zend_Rest_Route($front, array(), array(
    'admin' => array('questions')
));
$router->addRoute('rest', $restRoute);
下面是我如何声明此控制器的RESTful路由:

- application
  - controllers
    -Admin
      QuestionsController.php (class Admin_QuestionsController)
$restRoute = new Zend_Rest_Route($front, array(), array(
    'admin' => array('questions')
));
$router->addRoute('rest', $restRoute);
…从文档中我看不出我做错了什么-。但是,我得到以下错误:

Invalid controller specified (admin) 
当我声明不再作为休息路线时,我可以让路线工作:

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

…所以我认为我的文件夹结构没有错,或者类名没有错。但是,我需要我无法实现的RESTful路由。

如果启用了Zend模块,则您定义的
Zend_Rest_路由可以工作。文档中提到“将HTTP方法和URI转换为模块、控制器和操作”。要启用模块,请在
应用程序.ini中添加以下两行:

resources.modules[] =
resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
然后在
application/modules
中创建一个名为
admin/controllers
的目录,并在
application/modules/admin/controllers/questionscocontroller.php
中创建您的
questionscocontroller

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