2013-05-13 75 views
0

试图从视图助手中获取视图对象,这样我可以渲染某个部分。但我得到的是NULL 这里是代码 命名空间App \ Form \ View \ Helper;getView()在zend框架中返回NULL 2自定义窗体视图助手

use Zend\Form\View\Helper\AbstractHelper; 
use Zend\Form\View\Helper\FormInput; 
use Zend\Form\ElementInterface; 
class FormDate2 extends AbstractHelper 
{ 
    protected $script = 'element-decorators/date-picker'; 

    public function render(ElementInterface $element, $formType = null, array $displayOptions = array()) 
    { 
     echo '<pre>';var_dump($this->getView());echo '</pre>';die(); 
    } 
} 
+1

视图渲染你如何测试助手以确定视图对象为空? – Crisp 2013-05-13 11:43:08

+0

使用该帮助程序的自定义元素 – 2013-05-13 12:29:51

+0

该过程如下所示,FormRow Helper呈现元素视图部分,并通过上面发布的元素的帮助程序获取元素html – 2013-05-13 12:31:04

回答

1

找到了解决办法,不知道这是最好的一个,如果任何人有一个更好的,请张贴上述

这里有云,获取从狄

public function __construct() 
    { 
     if($this->getView() == NULL){ 
      $di = new Di(); 
      $view = $di->get('Zend\View\Renderer\PhpRenderer'); 
      $this->setView($view); 
     } 
    }