editacia vypisu chybovych hlaseni pri formulari

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

Dobry den, chcel by som sa opytat ako mozem editovat vypisanu hlasku z formuláru( napr. výpis pomocou addRule(‚..‘, ‚hesla sa nezhoduju‘)). Chcem tejto hlaske nastaviť nejaky css styl, pripadne zadat, kde presne sa ma vypisat na stranke a podobne. Dakujem.

Azathoth
Člen | 495
+
0
-

Záleží na způsobu vykreslení. Pokud použiješ manuální vykreslení, tak si můžeš dát chybové hlášky, kam chceš.

chemix
Nette Core | 1310
+
0
-

Ahoj @Matej123
těch možností je více. Pokud například použiješ šablonu pro vykreslení (ze sandboxu) tak tam je to vidět krásně

...
<tr n:foreach="$form->controls as $input" n:class="$input->required ? required">
	<th>{label $input /}</th>
	<td>{input $input} <span class=error n:ifcontent>{$input->error}</span></td>
</tr>
...

styluješ span class=error, ale samozřejmě si ten kód můžeš upravit jak chceš.

Pokud by jsi používal vyloženě custom vykreslení, tak na výpis error hlášky je makro inputError

<div class="form-group">
	{label password class => 'control-label col-sm-3' /}
	<div class="col-sm-6">
		{input password class => 'form-control', autocomplete => 'off'}
		<div class="message-error text-danger" n:ifcontent>{inputError password}</div>
	</div>
</div>

Případně pokud používáš Bootstrap, rovnou použij Nextras/Forms a jejich Bs3FormRenderer.php:https://github.com/…Renderer.php a máš to nastylované „bez práce“

Těch cest je více a každá má své dobré uplatnění

Matej123
Člen | 150
+
0
-

pre vypis formularu pouzivam iba jednoducho : {control nejakyForm} … neda sa pri takomto sposobe vykreslenia formularu stylovat vypisy z addRule, pripadne addError ? Alebo musim cely form vykreslovat manualne v latte?

Azathoth
Člen | 495
+
0
-

možná by bylo možné podědit default renderer a upravit vykreslení pravidel…