application
我正在寻找有关如何从左侧文件夹包含的普通文件夹结构models,views,controllers
到右侧的基于模块的文件夹结构的分步说明,其中application
包含一个modules
文件夹,其中包含单个模块及其拥有models,views,controllers
.
我说“转换”是因为我认为 zend 不允许我们从一开始就使用模块体系结构创建项目,但如果这样做,那将是膨胀的,并且不需要手动进行这些文件夹结构更改。
这是我到目前为止的经验
当我创建一个模块
zf create module product
时,会生成模块文件夹并在product
其中生成一个文件夹views,controllers,models
,并且还会生成该模块的。但我还需要将主目录移动
views,controllers,models
到modules/default
自己的文件夹中。如果我手动创建该文件夹并将主文件夹移到views,models,controllers
那里,则在尝试将新控制器添加到该default
模块时会出现错误。错误在于它重新生成main(现在丢失)views,controllers,models
并将application
新控制器插入其中,application/controllers/newcont
因为它无法识别默认控制器文件夹已手动移动到application/modules/default/controllers/
.因此,我对此的解决方案是
zf create module default
然后将 main 复制到views,models,controllers
那里。它最终看起来一样,但不知何故,zf create module
方法有所不同。当我这样做时,新控制器会正确添加到application/modules/default/controllers
而不是application/controllers
问题解决了一半。但是当我尝试查看应用程序时,我看不到任何东西index/index
。我也没有收到任何错误,但我什么也没看到。我怀疑这是因为应用程序不知道index/index
视图已经移动。
- 这曾经位于
application/views/scripts/index/index.phtml
- 但现在位于
application/modules/default/views/scripts/index/index.phtml
我猜我需要对 application.ini 或 bootstrap.php 或其他位置进行更改。那么,让这件事顺利完成并让它发挥作用的具体步骤是什么?我正在使用最新的 ZF 1.10.8。请从创建一个新的 zend 项目开始,这样就不会混淆确切的步骤。