Nefunkční validace addUpload nefunguje SetRequired
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Klainer
- Člen | 42
Dobrý den,
mám problém s validací povinné položky a to u pole typu File.
Validace setRequired() vůbec neproběhne, formulář se neodešle, jen se
přesměruje stránka, bez jakékoli hlášky.
Jedná se pravděpodobně o BUG, existuje nějaké řešení jak tuto validaci
zprovoznit, např. pomocí JavaScriptu ?
kod formulare.
protected function createComponentCarouselAddForm()
{
$form = new Form;
$form->addText("test","tes")->setRequired('Vyber obrázok');
$form->addUpload('image', 'Pridať obrázok:')
->setRequired('Vyber obrázok')
->addRule(FormValidators::SUM,"'Součet není správně!")
->addRule(Form::FILLED, 'Vyber obrázok')
->addRule(Form::IMAGE, 'Obrázok musí byť JPEG alebo PNG.');
$form->addSubmit('save', 'Uložiť');
$form->onSuccess[] = $this->carouselAddFormSucceeded;
return $form;
}
public function carouselAddFormSucceeded(Form $form)
{
\Nette\Diagnostics\Debugger::barDump($form->getValues()->image->error,'$form');
if ($form->getValues()->image->error !== 0) {
$form->addError('Vyber obrázok.');
$this->flashMessage('Vyber obrázok.');
$this->redirect('this');
}
$values = $form->getValues();
\Nette\Diagnostics\Debugger::barDump($values);
exit;
}
Děkuji za rady.
Editoval Klainer (22. 8. 2014 9:45)