我正在尝试使用自定义表单元素创建一个独立的Zend表单。我需要使用自定义视图助手来创建此元素。如何在没有application.ini文件的情况下注册自定义视图助手路径?
set_include_path(
implode(PATH_SEPARATOR, array(
get_include_path(),
PATH_TO_ZF_LIBRARY
)));
require_once 'Zend/Loader/Autoloader.php';
$autoloader = Zend_Loader_Autoloader::getInstance();
$autoloader->registerNamespace( 'My' );
$form = new Zend_Form;
... create and add zend form elements here
//display form
echo $form->render(new Zend_View());
此外,自定义Zend_Form_Element是否知道在新路径中查找自定义帮助程序?根据文档,我所要做的就是使用视图助手的类名创建public $ helper var。但我无法弄清楚这是否适用于自定义视图助手。
class My_Form_Element_Ssn extends Zend_Form_Element_Xhtml
{
public $helper = 'ssnElement';
public function setValue()
{
}
public function getValue()
{
return '12345';
}
}
class My_View_Helper_SsnElement
extends Zend_View_Helper_FormElement
{
public function ssnElement( $name, $value = null, $attribs = null )
{
return 'SSN';
}
}
我提前感谢您的帮助。
答案 0 :(得分:0)
尝试:
$view = new Zend_View();
$view->addHelperPath('/path/to/My/View/Helper', 'My_View_Helper');
echo $form->render($view);