将表单从应用程序加载到默认模块

时间:2011-11-17 01:10:22

标签: php zend-framework

我正在尝试将我的文件和表单更改为模块化结构。

在他们访问“application / forms”之前,名称是Application_Form_Example,现在我正在转移到默认模块(application / modules / default / forms),但我不知道如何命名表单。如果我将其保留为“Application_Form_Example”,我会收到此错误:

致命错误:在..

中找不到类'Application_Form_Example'

如果我将名称更改为“Default_Form_Example”或“Form_Example”,则相同

是否需要从引导程序调用Zend_Application_Module_Autoloader或我该怎么做?

2 个答案:

答案 0 :(得分:0)

dimirc,

模块化表单的标准命名约定类似于以下内容:

class Administration_Form_ManageContent extends Zend_Form

在此示例中,“Administration”是模块的名称,“ManageContent”是表单的名称。另一件需要记住的事情是,当我迁移到模块化结构时,你需要包含一个特定于模块的引导程序。它们不必包含太多内容。以下面的例子为例:

<?php

class Administration_Bootstrap extends Zend_Application_Module_Bootstrap
{

}

请注意,它扩展自 Zend_Application_Module_Bootstrap ,而不是Zend_Application_Bootstrap_Bootstrap。

我希望这会有所帮助。

马特

答案 1 :(得分:0)

在我的测试中,需要三个步骤:

  1. application/configs/application.ini中,添加以下行:

    resources.modules[] =

  2. application/modules/default/forms/ManageContent中,一个名为Default_Form_ManageContent的课程。

  3. application/modules/default/Bootstrap.php中,一个空的模块级引导Default_Bootstrap扩展Zend_Application_Module_Bootstrap

  4. 然后,在控制器中,例如:

    $form = new Default_Form_ManageContent();
    

    适合我。