Zend自定义Decorator无法加载

时间:2013-10-16 19:01:08

标签: php zend-framework decorator

我收到以下错误并且不明白原因:

Warning: Exception caught by form: Plugin by name 'TeamMember' was not found in the registry; used paths: Application_Decorator_: application/decorator/;decorator/ Zend_Form_Decorator_: Zend/Form/Decorator/

我使用了此处的文档:http://framework.zend.com/manual/1.12/en/zend.form.decorators.html

在appliaction配置文件中,命名空间定义为appnamespace = "Application"

装饰器文件放在 application / decorators / TeamMember.php

班级名称为Application_Decorator_TeamMember

在施工期间,我有以下两行:

$element->addPrefixPath('Application_Decorator', 'application/decorators/', 'decorator');
$element->addDecorator('TeamMember');

在viewScript表单中,我有以下内容:

echo $this->element->teamMember->renderTeamMember() . "<br />";
echo $this->element->teamMember->render() . "<br />";

第一行生成错误,第二行将使用标签呈现元素,而不在标签末尾添加“:”。

1 个答案:

答案 0 :(得分:1)

答案结果是在应用程序配置文件中指定了“库”位置。那被用作基本目录。我不得不在那里移动装饰器文件或将库位置设置为“application”目录,这就是我所做的。