php – 没有Zend-Framework MVC的Zend-form – viewscript不显示元素,但它们存在并由var_dump()显示
作者:互联网
当我尝试做类似的事情
<?=$this->element->mailCiteCheck?>
什么也没有显示.
但是,当我这样做时:
<?=var_dump($this->element->mailCiteCheck);?>
我明白了:
object(Zend_Form_Element_Checkbox)#118 (33) {
["checked"]=>
bool(false)
["helper"]=>
string(12) "formCheckbox"
["options"]=>
array(2) {
["checkedValue"]=>
string(1) "1"
["uncheckedValue"]=>
等等……那么如何显示这种形式的元素呢?
而当我这样做
<?=$this->element->mailCiteCheck;die();?>
我收到这个警告:
ViewHelper decorator cannot render without a registered view object
解决方法:
正如@Hikaru提供的the link所述:
By default, Zend_Form and Zend_Form_Element will attempt to use the view object initialized in the
ViewRenderer
因此,不是覆盖表单的render()方法或手动调用$form-> setView($view),另一种方法是将视图设置为ViewRenderer,可能在Bootstrap期间:
Zend_Controller_Action_HelperBroker::getStaticHelper('ViewRenderer')->view = $view;
标签:php,zend-framework,zend-form,zend-form-element 来源: https://codeday.me/bug/20190721/1494979.html