我已经为我的应用程序设置了两个模块,一个用于Admin,另一个用于其他应用程序,名为default。然后我为Admin模块创建了一个Bootstrap文件,当我尝试为默认模块设置bootstrap时,我有一个inifite循环,我的apache崩溃了。
我不确定我是否完全了解自举动力学。最初我曾试图引导我的默认模块来访问其文件夹中的表单。但只有当我在应用程序根目录(application / bootstrap.php)中的引导程序中设置它时才能工作:
$moduleLoader->addResourceType('form','modules/default/forms/','Form');
我做错了吗?
答案 0 :(得分:1)
ZF因一些奇怪的原因加载一个请求上的所有模块bootraps(即使没有请求模块)
所以也许你和admin和默认模块有一些冲突。
对于模块bootraps,加载加载.ini
resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
resources.modules[] = ""
和Bootstrap.php
课程Modulename_Bootstrap
扩展Zend_Application_Module_Bootstrap{}
答案 1 :(得分:1)
看起来有一个错误/改进与Zend打开这个问题。来自bug的相关引用:
跳过默认模块的原因是因为记录的用例 - 特别是我们在Zend_Tool中设置应用程序的方式 - 是默认模块直接位于application /下面并包含应用程序引导程序。如果我们然后允许加载默认模块的bootstrap ...我们进入一个递归循环。
该错误现已解决,因此您可能只需要将Zend Framework更新到最新版本。