Jak na formulář s počtem prvků závislým na záznamech v databázi?
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Grelek
- Člen | 233
Zdravím,
potřebuji vytvořit formulář pro editaci záznamů z databáze. Počet prvků je ale na databázi závislý. A potřebuji jej manuálně vykreslit. Čili něco takového.
public function createComponentEditForm()
{
$form = new Form();
$items = $this->db->getItems();
foreach ($items as $item) {
// přidat dvě pole a přenést id řádku
}
$form->addSubmit('send', 'Odeslat');
$form->onSuccess[] = $this->editFormSubmitted;
return $form;
}
public function editFormSubmitted(Form $form)
{
$values = $form->getValues();
foreach ($values as $value)
$this->db->where('id', $value->id)->update($value->service, $value->price);
}
Aktuálně to mám řešené/neřešené. Nějak to funguje, ale rozhodně to
nefunguje tak, jak chci. Potřebuji si ve formuláři nějak přenést
id
, service
a price
pro následný zápis
do databáze – řádek se identifikuje pomocí id
.
S Nette dělám po nějaké době a nenapadá mě, jak to vyřešit.
Editoval Grelek (7. 8. 2013 19:49)
- saimons
- Člen | 293
Dal by se na to pouzit i Container, ktery neni uveden v dokumentaci, ale tady: https://doc.nette.org/cs/forms#…
Editoval saimons (8. 8. 2013 0:56)