Defaultní hodnoty prvků v Multiplieru

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

Zdravím,

v šabloně procházím pomocí foreach data z tabulky a pomocí třídy Multiplier se postupně vytváří formuláře.
Jaký je nejlepší způsob určit defaultní hodnoty prvků v jednotlivých formulářích? Hodnoty se určí podle dat z toho pole, který procházím.
Je lepší dělat to v šabloně pomocí manuálního vykreslení, nebo udělat v presenteru něco v tomto smyslu?

class Presenter
{

	public function renderPage()
	{
		// klíče berme jako nějaká ID
		$data = array(
			1 => "hodnota x",
			2 => "hodnota y",
			3 => "hodnota z",
			// ...
		);
		foreach ($data as $key => $value) {
			$this["nazevForm"][$key]->setDefaults(array(
				"nazevPrvku" => $value
			))
		}
	}

}

Díky moc

David Kudera
Člen | 455
+
0
-

No moc pěkný není ani jedno, jen v šabloně je to ještě horší. Spíš bych to dal minimálně do samostatné třídy pro tu komponentu (pro multiplier). Zjednoduší se tím i samotný presenter, kde se definice celé komponenty může zmenšit až na jeden řádek.