Checkboxy seřazené podle skupin
- nightoul
- Člen | 10
Ahoj chtěl bych se zeptat, zda je možné v Nette vypsat v šabloně
jedním řádkem formulář, kde jsou checkboxy ve skupinách.
Tak jako lze toto $form->addCheckboxList(‚myForm‘, ‚My form‘,
$values) vypsat v šabloně jen pomocí {input ‚myForm‘}.
Bohužel se mi to nedaří takto elegantně v případě checkboxů ve
skupinách. Dělám to teď takto:
foreach ($valuesByGroups as $groupName => $pairs) {
$form->addGroup($groupName);
foreach ($pairs as $id => $label) {
$form->addCheckbox('myForm_'.$id, $label);
}
}
V šabloně to pak musím ještě řešit takto:
<div class="checkbox-group" n:foreach="$presenter->getComponent('editForm')->getGroups() as $formGroup">
<div class="pull-left wp-100">
<h4 class="pull-left">{$formGroup->getOption('label')}</h4>
</div>
<div class="checkbox-group-items">
{foreach $formGroup->getControls() as $item}
<span>{$item->getControlPart()}</span>
<span>{$item->getLabelPart()}</span>
{/foreach}
</div>
</div>
Funguje to správně, jen se mi nelíbí že to musím v šabloně ještě iterovat. Existuje způsob, jak to udělat jedním řádkem v šabloně?