VALIDACE „Datum od“ a „datum do“, tak aby „datum od“ nemohlo byt pozdeji nez „datum od“
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- jiri.pudil
- Nette Blogger | 1029
Asi na to budeš muset napsat vlastní validační pravidlo:
$form['date_from']->addRule(function (Nette\Forms\IControl $from, Nette\Forms\IControl $to) {
return strtotime($from->value) < strtotime($to->value);
}, 'Datum od nesmí být později než datum do.', $form['date_to']);
- jiri.pudil
- Nette Blogger | 1029
Do addRule můžeš zadat kromě konstant typu Form::FILLED taky callback nebo anonymní funkci (což je tenhle případ). Koneckonců i ty konstanty jsou jenom zkratkou k nějakému callbacku.
Callbacku/anonymní funkci se předá Control, nad kterým voláš addRule
(v tomhle případě $form['date_from']
) a – pokud
existuje – třetí argument metody addRule (v tomhle případě
$form['date_to']
) – o to se postará
Nette.
Editoval jiri.pudil (20. 12. 2012 18:34)