Problem s formularem v cyklu

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

Ahojpotreboval bych pomoci mam problem ze v cyklu se mi negeneruje automaticky AddText pro formulare KOd mam takyto:

Public function createComponentAddRowsForm($cols)
 {

$form = new \Nette\Application\UI\Form;

foreach($cols as $col)
{
$form->addText($col[‚data‘][‚Field‘],$col[‚label‘]);
 }

return $form;
}

Patrik Votoček
Člen | 2221
+
0
-
  1. nauč se formatovat kód

2) bez infromace co je v $cols s tím nemáme šanci hnout…

moc nechápu jak chceš do té továrničky propašovat $cols

zazax1
Člen | 9
+
0
-

V

$cols

je pouze pole a ma tuto strukturu:

array(11) [
   0 => array(2) {
      data => array(3) {
         Field => "id" (2)
         Type => "int(11)" (7)
         Default => NULL
      }
      label => "id" (2)
   }
   1 => array(2) {
      data => array(3) {
         Field => "rewrite" (7)
         Type => "varchar(255)" (12)
         Default => NULL
      }
      label => "SEO URL" (7)
   }

PS: to pole uz tam je ale v cyklu se mi proste nenastavi inputy a vubec nevim proč

Editoval zazax1 (9. 10. 2011 16:04)

Patrik Votoček
Člen | 2221
+
0
-

Pokud si myslíš že tam to pole dostaneš: Public function createComponentAddRowsForm($cols) tak nedostaneš. Protože v $cols nebude to tvé pole ale string „addRowsForm“. Více viz můj předchozí post

zazax1
Člen | 9
+
0
-

aha a kdyz jsem udelal prave dump($cols) nad tim foreachemtak me to vypsalo to pole, coz me asi trosku zmatlo

Patrik Votoček
Člen | 2221
+
0
-

v tom případě tu komponentu vytváříš / voláš velice divně / zvláštně. A bez více kódu těžko hádat…

zazax1
Člen | 9
+
0
-

action v presenteru vypada takto:

public function actionAddRow($table_name)
        {
         $columns = $this->getService('model')->getTableColumns($table_name);
         $this->template->columns = NetteEdminParser::getColumns($columns,$table_name);
         $this->createComponentAddRowsForm($this->template->columns);
        }
--/
Aurielle
Člen | 1281
+
0
-

Továrnička se z jakýchkoliv metod nevolá, Nette ji bude volat samo.