У меня есть это для формы
$this->add(array(
'name'=>'username',
'type'=>'Text',
'options'=>array(
'label' => 'Username',
)
));
$this->add(array(
'name'=>'password',
'type'=>'Password',
'options'=>array(
'label' => 'Password',
)
));
а также
echo $this->formCollection($form);
Это, очевидно, только соответствующие части кода. Вывод следующий:
<fieldset ><label><span>Username</span><input type="text" name="username" value=""></label><label><span>Password</span><input type="password" name="password" value=""></label>
Есть ли способ поместить каждую строку в абзац или отделить все строки с помощью разрывов строк? Я читал кое-что о Decorators, но я не уверен, что это была Zend Framework Version 2, и я не знаю, как применить это к formCollection, если это было так.
Лучше всего переопределить formRow
помощник с вашей собственной версией, которая выводит разметку, которую вы хотите. Я написал немного Lib это делает только это, не стесняйтесь использовать это или копировать подход.
Определите свой собственный помощник: https://github.com/tfountain/tf-form/blob/master/src/TfForm/Form/View/Helper/FormRow.php а затем обновите конфигурацию вашего модуля, чтобы использовать его: https://github.com/tfountain/tf-form/blob/master/config/module.config.php
Других решений пока нет …