validace OR -alespoň jeden prvek

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
tany
Člen | 31
+
0
-

Ahoj,
mám formulář, kde jsou dva inputy a potřebuju kontrolovat, aby alespoň jen byl vyplněný.

Na každý prvek jsem přidal addConditionOn navázaný na druhý prvek s callback funkcí. Ale je tu problém, protože druhý prvek ještě neexistuje, takže mi Nette vyhodí Nette\InvalidArgumentException.

Lze toto nějak řešit ? Napadá mě pouze přidat formuláři onSubmit callback a tam to řešit ručně, ale to pstrádá jakousi eleganci.

Majkl578
Moderator | 1364
+
0
-

Prvně je definuj bez validací a až následně na ně validace přidej. Tedy:

$form->addText('a');
$form->addText('b');

$form['a']->addConditionOn($form['b'], ...)...
$form['b']->addConditionOn($form['a'], ...)...
tany
Člen | 31
+
0
-

jaj .. nojo, slabší chvilka :). Díky