我正在开发一个项目并拥有以下项目布局:
|Project
|-Application
|-api
|-configs
|-controllers
|-models
|-modules
|-core
|-controllers
|-models
|-views
|-Bootstrap.php
|-site1
|-site2
|-site3
|-views
|-Bootstrap.php
|-Docs
|-Library
|-Public
|-.zfproject.xml
我在application.ini中使用过这个来尝试将default
模块设置为core
模块:
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
resources.frontController.defaultModule = "core"
resources.frontController.defaultControllerName = "Index"
resources.frontController.defaultAction = "index"
resources.modules[] = ""
我的问题是,出于某种原因,我无法在模块中使用bootstraps。这几乎就像默认模块没有被改变一样。应用程序的行为就像它一样,直到我尝试加载bootstraps - 我收到此错误:
致命错误:未捕获的异常'Zend_Application_Resource_Exception' 消息'找到模块的Bootstrap文件“默认”但引导程序 “未找到”类“Default_Bootstrap” M:\ Zend_Framework \ library \ Zend \ Application \ Resource \ Modules.php on 第85行
以此错误为前缀:
Zend_Application_Resource_Exception:为模块找到Bootstrap文件 “default”但找不到bootstrap类“Default_Bootstrap” M:\ Zend_Framework \ library \ Zend \ Application \ Resource \ Modules.php on 第85行
谁能看到我出错的地方?
我的应用程序/ Bootstrap.php文件:
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
}
我的应用程序/ Core / Bootstrap.php文件:
class Core_Bootstrap extends Zend_Application_Module_Bootstrap
{
}
答案 0 :(得分:6)
不是100%,但如果您删除以下行:
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
可能会解决问题。如果我没有弄错,因为你正在使用模块,设置它会导致错误。
答案 1 :(得分:0)
您的应用程序看起来可能缺少一行.ini:
resources.frontController.params.prefixDefaultModule = ""
尝试以这种方式使用它并查看它是否有效,我认为这只是告诉应用程序在使用模块时,名为'default'的模块没有前缀。
虽然我可能错了所以你可能需要进行实验
好吧,也许有两行丢失了:)
resources.frontController.moduleControllerDirectoryName = "controllers"