Vylepšenie podmienok formulárov - addRule() – kontrolu polí pre viac podmienok naraz
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- jardo
- Člen | 17
Ahojte
Napadlo ma, či by nebolo fajn zjednodušiť validovanie formulárov viacerými kontrolami v rámci jediného volania metódy addRule(). Metóda addRule by ako prvý parameter prijímala pole s podmienkami.
ako príklad uvediem:
<?php
$form->addText('email', 'Váš email:')
->addRule(Form::FILLED, 'Musíte zadať email')
->addRule(Form::EMAIL, 'Email nie je v správnom formáte');
?>
by po novom bolo možné zapísať jednodušene:
<?php
$form->addText('email', 'Váš email:')
->addRule(array(Form::FILLED, Form::EMAIL), 'Musíte zadať email v správnom formáte');
?>
Editoval jardo (25. 1. 2011 18:31)
- JakubJarabica
- Gold Partner | 184
Nevidím v tom prínos, keďže je zvyčajne viac user-friendly zobraziť custom hlášky pre každý typ chyby. V tvojom prípade stačí nechať len Form::EMAIL a aj tak validácia neprejde, prídeš len o required suffix(ak máš nejaký nastavený). Form::FILLED aj Form::EMAIL hlášku používam s nakonfigurovaným $defaultMessages, takže druhý parameter uvádzať nemusím.