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)