AddDynamic tvorba vlastní šablony

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

Zdravím, hraju si s AddDynamic a nepovedlo se mi vykreslit šablonu formuláře posvém.

PRESENTER:

<?php
	public function createComponentAddProdejForm()
	{
		$form = new Form;

		//container for all nodes
		$nodes = $form->addDynamic("nodes", function (Container $container) {
			$container->addText("nazev", "Název")->getControlPrototype()->setClass('myText');
			$container->addText("id", "id")->getControlPrototype()->setClass('myId');
			//button for removing the new node
			$container->addSubmit("removeNode", "Odebrat uzel")
				->addRemoveOnClick();
		}, 1);
		/** @var \Kdyby\Replicator\Container $nodes */

		//button for adding a new node
		$nodes->addSubmit("addNode", "Přidat uzel")
			->addCreateOnClick(TRUE);

		$form->addSubmit("save", "Uložit");

		return $form;
	}
?>

ŠABLONA:

takhle to jde ale to nechci:

{control addProdejForm}

chtěl bych něco takového ale to zas nejde.

<?php
{form addProdejForm}
	<div class="password-form">
		{control $form errors}

		<div class="pair">
			{label nazev /}
			<div class="input">{input nazev} {input id}</div>
		</div>
		<div class="pair">
			<div class="input">{input removeNode}</div>
		</div>
		<div class="pair">
			<div class="input">{input addNode}</div>
		</div>
		<div class="pair">
			<div class="inputC">{input save}</div>
		</div>
	</div>
{/form}
?>

nemám totiž nápad jak se odkázat na ty vnořené prvky v addDynamic.

Děkuju za radu.

xxxmisko
Člen | 140
+
0
-

ahoj, nejak takto:

{foreach $form['nodes']->containers as $id => $nodes}
	{label nodes-$id-nazev /}
...
Filip Procházka
Moderator | 4668
+
0
-

Ahoj Richarde, četl jsi dokumentaci?

Richard.Bazant
Člen | 8
+
0
-

No jo to ono. Díky za radu.
To Filip: (sorry nevím kam jsem koukal… )