Odstranění reuqired u prvku při editaci

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

Zdar Netti, řeším problém při vypsání formuláře pro editaci.

Mám formulář který obsahuje FILE pro upload obrazku + titulek, atd.

Nyní když chci formulář vykreslit pro editaci obrázku, tak chci odstranit ten FILE a nechat pouze nejaky ten TEXT input.

odstranit lze pomocí

unset($this['imageForm']['img']);

Nicméně jeho REQUIRED zůstane, a tak se sice prvek nevykreslí, ale po odeslání formu se nic nestane. když nenastavím prvek jako REQUIRED už při tvorbě formu, tak to jde.

A když zkouším toto:

$this['imageForm']['img']->setRequired(false);

Tak to také nefunguje. Někdo nějaký TIP ? předem díky

Editoval kleinpetr (18. 2. 2015 0:18)

David Matějka
Moderator | 6445
+
0
-

Kde volas to unset, resp setRequired?
Musi se to zavolat i po odeslani, pred samotnym zpracovanim. Nevolas to nahodou v render* metode? Pokud ano, presun to do action*

David Matějka
Moderator | 6445
+
0
-

Koukni se na zivotni cyklus presenteru, formular se zpracovava v te casti „Interaction“ (handle…). Takze se to do render nedostane a tudiz se ten prvek neodstrani pred zpracovanim formulare.

Udelej, co rikam – presun to do action*

kleinpetr
Člen | 480
+
0
-

Už jsem to přesunul do actionEdit() a teď už vypadá, že se posílá, ale neukládá data, to už ale bude nejspíš chyba jinde :) tak děkuji.

kleinpetr
Člen | 480
+
0
-

Tak to není chyba jinde, opravdu když renderEdit() změním na actionEdit() tak se sice form odešle, ale vubec se nezpracuje.

Editoval kleinpetr (18. 2. 2015 0:52)

kleinpetr
Člen | 480
+
0
-

Neví někdo čím by to mohlo být ?