Počet textboxů načítaných z databáze
- lampa
- Člen | 9
Dobrý den,
jestli narážím na nějaké téma, které se už řešilo tak se předem
omlouvám. Hledam jsem na fóru i v databázi ale přesně to co potřebuji
jsem nenašel.
Potřeboval bych vygenerovat textboxy podle počtu záznamů v databázi (ne podle toho kolik chce uživatel ale podle té DB). Měl bych třeba „předmět“ a ten by patřil procentuálně do několika „kategorií“. Relace by tedy byla asi N:M (jeden předmět může patřit třeba do 1. kategorie na 30%, do 2. kategorie na 50% a o 3. na 20% a druhý předmět bude patřit zase třeba do 1. a 3. kategorie na 50%)
Formulář bych si představoval asi takhle:
Název předmětu: …
kategorie 1: …
kategorie 2: …
kategorie 3: …
Problém je v tom, že počet kategorií není statický (nevím jestli uživatel bude mít 3 kategorie nebo 10)
Koukal jsem i na addDynamic ale řekl bych, že to není přesně to co potřebuji. Existuje tedy nějaký jiný způsob jak toho dosáhnout? Pokud bych v továrně formuláře použil cyklus, nevím jak nastavit jména textboxů (jelikož očíslovat je nelze).
Předen děkuji za nápady.
- Patrik Votoček
- Člen | 2221
Na to slouží kontainery
protected function createComponentMyForm()
{
$categories = array('predmet1', 'predmet2', 'predmet3');
$form = new Form;
// ...
foreach ($categories as $category) {
$container = $form->addContainer($category);
$container->addText('percent', ucfirst($category));
}
// ...
return $form;
}