setDefaults občas nefunguje, jak má

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

Mám formulář, kterému v action nastavím defaultní hodnoty z databáze. Na produkčním režimu se mi ale stává, že občas se data prostě nenačtou – je nutné nejprve obnovit stránku a poté se data objeví. Neví někdo, v čem by mohl být zakopaný pes?

EDIT: Zkusím to trošku podrobněji popsat:

    protected function createComponentFormular($name) {
        $form = new Form;
        $form->addText(...)
        ...
        return $form;
    }

    private function doSomeMagicUserRow($user) {
        $userArray = array();
        foreach ($user as $key => $value) {
            $this->flashMessage("key=" . $key . " value=" . $value); // pro me prehlednejsi vypis, nez pomoci dump()
            $userArray[$key] = $value;
        }
        return $userArray;
    }

    public function actionEdit($id = 0) {
        if (($user = $this->context->createUsers()->find($id)->fetch()) !== FALSE) {
            $regForm = $this["formular"];
            $regForm->setDefaults($this->doSomeMagicUserRow($user));
        } else {
            ...
        }
    }

Smažu cache, zobrazím stránku, flashMessage vypíše korektně obsah řádku tabulky, ale formulář je prázdný. Obnovím stránku, flashMessage vypíše korektně obsah řádku tabulky a formulář je korektně vyplněn. Proč se nevyplní hned?

Editoval castamir (29. 6. 2012 11:28)