formulare – setDefaultValue z databaze
- Stig
- Člen | 29
Ahoj, snazim se naplnit defaultni hodnotou text input pri editaci polozky. Hodnota se bere z db. Jedine na co jsem zatim prisel je toto, primo v metode createComponent:
<?php
case 'formEditSekce':
$form = new AppForm($this, $name);
$sql = new Sql;
$value = $sql->find((int) $this->getParam('id_sekce'),'news_section')->fetch();
$form->addText('nazev', 'Název')
->setDefaultValue($value->nazev)
->addRule(Form::FILLED, 'Please enter an název.');
...
?>
kdyz defaultni hodnotu nastavim takto
<?php
->setDefaultValue('hodnota')
?>
tak to funguje. Nejde to pri vypisu z db.
Problem:
funguje ale hazi chybu:
Trying to get property of non-object in..
Jak je bezny zpusob nastaveni ->setDefaultValue pri vypisu z db.
Diky
Editoval Stig (1. 12. 2010 14:54)
- Šaman
- Člen | 2666
Tak si dumpni proměnnou $sql
. Je to objekt? A má public
proměnnou nazev
? (v případě že $sql je objekt dědící od
nette Object by mohl obsahovat metodu getNazev()).
Jestli ne, tak hledej chybu tam. Ještě lépe – načti si z db přímo
hodnotu kterou chceš nastavit jako defaultní do proměnné $nazev a až tam
spolehlivě bude, tak nastavíš ->setDefaultValue($nazev)