Създавам персонализиран помощник за изгледи. и искам да знам как мога да използвам formElement "Zend\Form\View\Helper\FormElement" в моя собствен изглед помощник. Ето моят код.
use Zend\Form\ElementInterface;
use Zend\Form\FieldsetInterface;
use Zend\Form\View\Helper\FormElement;
use Zend\Form\View\Helper\AbstractHelper;
use Zend\View\Renderer\PhpRenderer;
class JudgeCareerViewHelper extends AbstractHelper {
private $output;
public function __invoke($formCollection) {
foreach ($formCollection as $elementOrFieldset) {
if ($elementOrFieldset instanceof FieldsetInterface) {
$obj = new FormElement();
$this->output .= $obj($elementOrFieldset->get('startServiceDate'));
} elseif ($elementOrFieldset instanceof ElementInterface) {
//set element markup
echo 'element';
}
};
echo $this->output;
die();
}
}
Когато i echo
връщането на изхода от FormElement
е празно. Така че отворих библиотеката zend "Zend\Form\View\Helper\FormElement", за да разбера къде е проблемът. Така че открих, че по-долу кодът се връща празен. Не знам каква е целта на $renderer = $this->getView();
и как да получа изглед.
$renderer = $this->getView();
if (!method_exists($renderer, 'plugin')) {
// Bail early if renderer is not pluggable
return '';
}
Цел на създаването на персонализиран помощник за изглед за генериране на моя собствена маркировка (HTML) вместо zend buitin html.