$form->addText(‚desc_[0]‘, ‚Popisek‘)

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
masterr
Začátečník | 141
+
0
-

Proč se nedá v nette, udělat něco jako $form->addText(‚desc[0]‘, ‚Popisek‘)? Prostě dát name jako pole. Jak to pak řešíte? to děláte $form->addText(‚desc_‘. $img->id, ‚Popisek‘) a pak si to upravíte?

s4muel
Člen | 92
+
0
-

n̶e̶j̶d̶e̶,̶ ̶t̶o̶ ̶j̶e̶ ̶f̶a̶k̶t̶.̶ ̶t̶e̶n̶ ̶n̶a̶m̶e̶ ̶p̶a̶r̶a̶m̶e̶t̶e̶r̶:̶

'desc_' . $img->id

a̶ ̶n̶a̶s̶l̶e̶d̶n̶e̶ ̶p̶r̶e̶b̶e̶h̶n̶u̶t̶i̶e̶ ̶v̶s̶e̶t̶k̶y̶c̶h̶ ̶d̶e̶s̶c̶_̶*̶ ̶p̶r̶e̶m̶e̶n̶n̶y̶c̶h̶ ̶z̶n̶i̶e̶ ̶a̶k̶o̶ ̶n̶a̶j̶j̶e̶d̶n̶o̶d̶u̶c̶h̶s̶i̶e̶ ̶a̶ ̶v̶l̶a̶s̶t̶n̶e̶ ̶a̶j̶ ̶p̶o̶m̶e̶r̶n̶e̶ ̶e̶l̶e̶g̶a̶n̶t̶n̶e̶ ̶r̶i̶e̶s̶e̶n̶i̶e̶

EDIT:poznamku beriem spat, riesenie vid nizsie

Editoval s4muel (30. 7. 2013 13:46)

enumag
Člen | 2118
+
0
-

Nestačilo by přidat Container?

Majkl578
Moderator | 1364
+
0
-

a nasledne prebehnutie vsetkych desc_* premennych znie ako najjednoduchsie a vlastne aj pomerne elegantne riesenie

A nezbláznil ses náhodou? Ne nejjednodušší a už vůbec ne elegantní. K tomuhle slouží kontejnery.

Např.:

$descs = $form->addContainer('descs');
for ($i = 1; $i < 10; $i++) {
	$descs->addText($i);
}

// zpracování
$values = $form->getValues();

foreach ($values->descs as $k => $v) {
	echo $k, '=', $v, PHP_EOL;
}
masterr
Začátečník | 141
+
0
-

A nezbláznil ses náhodou?

Akorát jsem zapomněl, že je tady něco jako container no, tak hlavně klid :D. A dík.

s4muel
Člen | 92
+
0
-

masterr napsal(a):

A nezbláznil ses náhodou?

Akorát jsem zapomněl, že je tady něco jako container no, tak hlavně klid :D. A dík.

to bolo asi pre mna;)
kadopadne klud, teraz sa nieco nove namiesto jedneho priucili rovno dvaja.