nefunkcni podminka addConditionOn v low-level formulari
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- pp
- Člen | 50
Zdravim,
mam formular, ktery ma nekolik statickych polozek (treba customer_id, note)
a pak dalsi ktere ziskam az dynamicky dotazem z modelu – treba pres
actionXXX.
Proto ten form vykresluju v sablone manualne.
Funguje to vsechno az na zavislou validaci addConditionOn. Pokud form vykreslim
pres makro {control} tak to je OK.
Jak to prosim resit ?
PRESENTER
$form->addText('customer_id', 'Zákazník ID:')
$form->addText('note', 'Poznámka:')
// tohle nefunguje
->addConditionOn($form['customer_id'], UI\Form::BLANK)->setRequired('Nutno vyplnit');
$form->onSuccess[] = function(UI\Form $form) {
$values = $form->getHttpData($form::DATA_TEXT | $form::DATA_KEYS, 'form[]');
public function actionXXX()
{
$this->template->form_items = $this->xxxManager->getFormItems();
}
TEPMLATE
{form eetReceiptForm class=>"form-horizontal"}
<div class="form-group">
<label n:name="customer_id" class="control-label">{$form[customer_id]->caption}</label>
<input n:name="customer_id" name="form[customer_id]" class="form-control">
</div>
<div class="form-group">
<label n:name="note" class="control-label">{$form[note]->caption}</label>
<input n:name="note" name="form[note]" class="form-control">
</div>
{foreach $form_items as $i}
<div class="form-group">
<label class="control-label">{$i['nazev']}</label>
<label class="control-label">{$i['cena']}</label>
<input type="text" name="form[{$i['kod']}]" class="form-control" placeholder="">
<label class="control-label">{$i['mj']}</label>
{/foreach}
{/form}
- jiri.pudil
- Nette Blogger | 1032
Já bych řekl, že ta validace funguje, jen prostě nikde nevypisuješ chyby :)
<div n:foreach="$form->errors as $error">{$error}</div>