Avatar
Juraj Mlich
Redaktor
Avatar
Juraj Mlich:

Zdravím, mám Presenter v ktorom mám metodu: (používam Nette)

public function renderEdit($id)
    {
        $this->template->recipe = $this->context->recipesReposity->getRecipe($id);
    }

Potom tam mám ešte metodu na vytvorenie komponenty:

public function createComponentEditRecipe()
    {
        $form = new Form;
        $form->addHidden('recipe_id');
        $form->addText('name', 'Název receptu:')
             ->setDefaultValue($this->template->recipe->name)
             ->setRequired('Musí být vyplneno!');
        $form->addTextArea('recipe', 'Recept: ')
             ->setDefaultValue($this->template->recipe->recipe)
             ->setRequired();
        $form->addUpload('preview_image', 'Obrázok: ')
             ->addRule(Form::MAX_FILE_SIZE, 'Maximálna veľkosť obrázku je 5 MB!', 1024*1024*5)
             ->addRule(Form::IMAGE, 'Súbor musí být obrázek!');
        $form->addSubmit('edit_recipe', 'Uložiť');
        $form->onSuccess[] = $this->saveRecipe;

        return $form;
    }

Keď stránku spustím tak je všetko v poriadku, chyba je až keď formulár odošlem - metóda komponenty sa spustí skôr ako metoda renderEdit a preto nemôže doplniť defaultné hodnoty. Mám pár návrhov ako to spraviť, ale podľa mňa sú zlé (nevalidné), tak by sa to podľa mňa robiť nemalo. A preto sa obraciam na vás - ako by ste túto situáciu riešili vy? Ďakujem za odpoveď :)

Editováno 27.11.2013 18:11
Odpovědět 27.11.2013 18:10
Vždy je lepšie učiť sa z cudzích chýb, než z vlastných chýb.
Avatar
Inoue Yūki
Redaktor
Avatar
Odpovídá na Juraj Mlich
Inoue Yūki:

Nevím, jak to Nette má, ale co komponentu vykreslit až potom, co se spustí metoda?

Nahoru Odpovědět 27.11.2013 18:13
Avatar
Juraj Mlich
Redaktor
Avatar
Odpovídá na Inoue Yūki
Juraj Mlich:

Veď to je práve ten problém, ono to funguje dobre, ale až keď niečo odošlem vtedy sa tá metoda zavolá skôr. Neviem to ovplyvniť :(

Nahoru Odpovědět 27.11.2013 18:18
Vždy je lepšie učiť sa z cudzích chýb, než z vlastných chýb.
Avatar
Inoue Yūki
Redaktor
Avatar
Odpovídá na Juraj Mlich
Inoue Yūki:

Tak nevím, zkus se zeptat na Nette fóru.

Nahoru Odpovědět 27.11.2013 18:24
Avatar
Juraj Mlich
Redaktor
Avatar
Nahoru Odpovědět 27.11.2013 18:32
Vždy je lepšie učiť sa z cudzích chýb, než z vlastných chýb.
Avatar
Juraj Mlich
Redaktor
Avatar
Juraj Mlich:

Pokiaľ by niekto hľadal odpoveď ako som to vyriešil : http://forum.nette.org/…ltna-hodnota

Nahoru Odpovědět 27.11.2013 19:27
Vždy je lepšie učiť sa z cudzích chýb, než z vlastných chýb.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.