setDefaultValue u checkboxlistu kdyz zdroj je associovane pole
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- vosy
- Člen | 532
Form
$destinaceSeznam = $this->destinaceSeznam();
$form->addCheckboxList('destinace', 'Destinace:', $destinaceSeznam)
->setRequired('Zvolte destinaci.');
function destinaceSeznam()
{
$destinace = $this->DestinaceRepository->seznam();
$seznam = array();
if($destinace)
{
foreach($destinace as $v1)
{
$seznam[$v1->svetadily['nazev']][$v1->id] = $v1['nazev'];
}
}
return $seznam;
}
nastaveni defaultni hodnoty
$form['destinace']->setDefaultValue(array(39));
vysledek
Value '39' are out of allowed range [array ( 39 => 'Maroko', ), array ( 27 => 'Argentina', 38 => ...] in field 'destinace'
- David Matějka
- Moderator | 6445
@Jan Endel: mam za to, ze keys
@vosy: proc tam posilas dvourozmerne pole?
- vosy
- Člen | 532
ty staty mam rozdelene do svetadilu a kazdy svetadil ma svuj sloupec a chci aby se to v sablone spravne rozkreslilo
<div class="control-group error">
{label destinace class=>"control-label"/}
<div class="controls">
{foreach $form['destinace']->items as $k1=>$v1}
<div class="pull-left destinaceControls">
<div class="nazvySvetadilu">{$k1}</div>
{foreach $v1 as $k2=>$v2}
{if $iterator->first}
<div class="pull-left">
{/if}
{if $iterator->counter%5==0}
</div>
<div class="pull-left pL10">
{/if}
<div class="checkbox pT10">
<label for="frm-pridatZajezdForm-destinace_{$k2}"><input type="checkbox" name="destinace[]" value="{$k2}" id="frm-pridatZajezdForm-destinace_{$k2}"> {$v2}</label>
</div>
{if $iterator->last}
<div class="clearfix"></div>
</div>
{/if}
{/foreach}
</div>
{/foreach}
</div>
Editoval vosy (23. 4. 2014 13:02)
- David Matějka
- Moderator | 6445
Do toho checkboxlistu posli jen array(39 ⇒ argentina, 29 ⇒ maroko) a v sablone si to vykresli jak potrebujes
A proc input a label vykreslujes rucne a ne pomoci makra?
Editoval matej21 (23. 4. 2014 13:01)
- David Matějka
- Moderator | 6445
//verze nette?
EDIT:
no checkboxlist je vlastne az v 2.1
pouzij
{input destinace:$key}
respektive
{label destinace:$key/}
Editoval matej21 (23. 4. 2014 15:40)