Jak na kompozici formuláře spolu s addDynamic?

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

Zdravím

Pro jeden složitější formulář bych chtěl použít Kdyby\Replicator. Jde o to, že container, který bych chtěl duplikovat mám již vytvořený a uložený (často ho používám jinde), ale nemůžu přijít na to jak to spojit.

<?php

$form = new Form;
$form->addText('nejaky-prvek','Libovolný prvek');

$form->addGroup('Adresy');
$adress = $form->addDynamic('adress', function (Nette\Forms\Container $container){
  //tady bych chtěl načíst dříve vytvořený formulář
  $container = new AddressContainer(); //ale tohle nefunguje
},1);

$adress->addSubmit('add', 'Přidat adresu')
  ->setValidationScope(FALSE)
  ->addCreateOnClick(TRUE);
?>

Vím, že se to tu už jednou řešilo, ale na tady se podle mého spíše jednalo o to, tak do containeru, který chci použít do kompozice dostat replicator.

David Matějka
Moderator | 6445
+
0
-

to, na co odkazujes, presne potrebujes

$adress = $form->addDynamic('adress', function (Nette\Forms\Container $container){
},1);
$address->containerClass = 'AddressContainer';
Richard Faila
Člen | 40
+
0
-

matej21 napsal(a):

to, na co odkazujes, presne potrebujes

$adress = $form->addDynamic('adress', function (Nette\Forms\Container $container){
},1);
$address->containerClass = 'AddressContainer';

Díky, tohle mě nenapadlo. Jenom ještě zlobí addGroup('Adresy'). Container se vykreslí, ale skupina (jde mi především o nadpis) už ne.

David Matějka
Moderator | 6445
+
0
-

ano, se skupinama je v replicatoru casto problem… mozna budes muset pouzit manualni vykresleni formulare..