obaleni inputu divem v šabloně {control myForm}

krata
Člen | 4
+
0
-

Ahoj,
prosím o radu. Je nějaká možnost jak obalit input type=text divem ve formuláři, který vypisuji v šabloně {control myForm}.
Děkuji za nasměrování.

Šaman
Člen | 2635
+
0
-

Asi by sis musel upravit tvůj FormRenderer. Pokud žádný nenastavuješ, tak je tam Nette\Forms\Rendering\DefaultFormRenderer.
Ale jestli je to jednorázovka, bude asi lepší manuální vykreslování. Poslední Nette (až 3.1 dev) umí dokonce připravit kód šablony ke zkopírování.

P.S. To z odkazu je úplně horká novinka a jestli nechceš vyvíjet na dev verzi, stačilo by si vytvořit nový projekt Nette 3.1 a kód si nechat vygenerovat v něm.

P.P.S. Tak teď jsem to zkoušel a nefunguje to ani ve verzi "latte/latte": "v2.8.x-dev" a master je ještě starší. Asi to zatím není vůbec v repozitáři.

Dodatek k dodatku: Tak to funguje, ale v composeru je potřeba "minimum-stability": "dev" – já měl RC a v tom to ještě není.

Editoval Šaman (31. 3. 2020 20:10)

krata
Člen | 4
+
0
-

vyzkouším, díky.

Kamil Valenta
Člen | 762
+
0
-
$renderer = $form->getRenderer();
$renderer->wrappers['control']['container'] = 'div';

?