编程语言
首页 > 编程语言> > php – 没有Zend-Framework MVC的Zend-form – viewscript不显示元素,但它们存在并由var_dump()显示

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