Jak na setDefaults v containerech?

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

mam formular:

    // group Dodací údaje
    $form->addGroup('Dodací údaje');
    $sub = $form->addContainer('delivery');
    $sub->addText('full_name', 'Jméno a příjmení:', 35);
    $sub->addText('email', 'E-mail:', 35);
    $sub->addText('street', 'Ulice:', 35);
    $sub->addText('city', 'Město:', 35);
    $sub->addText('zip', 'PSČ:', 35);

jak pak nahrat defaultni data natahnuta z db podle id uzivatele?

zkusil sem tohle:

      if($user->isAuthenticated()) {
        $addr = $address->getAddress()
                  ->select('*')
                  ->where('userId = %i',$user->getIdentity()->id)
                  ->orderBy('added','DESC')
                  ->fetch();
        $form['invoice']->getForm()->setDefaults((array) $addr);
        $form['delivery']->getForm()->setDefaults((array) $addr);
      }

ale nefakcilo to :)

Editoval cuga (16. 5. 2009 18:16)

cuga
Člen | 210
+
0
-

Vyreseno:

        $form->setDefaults(array('invoice' => $addr,'delivery' => $addr));

Editoval cuga (16. 5. 2009 21:24)

Jan Tvrdík
Nette guru | 2595
+
0
-

cuga napsal(a):

Vyreseno:

        $form->setDefaults((array) array('invoice' => $addr,'delivery' => $addr));

WTF? Jaký smysl má přetypovat array na array?

cuga
Člen | 210
+
0
-

hehe :) uz toho mam dneska plne kecky :) samozrejme ze zbytecnost :)