Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony]forms
Lonas
post
Post #1





Grupa: Zarejestrowani
Postów: 576
Pomógł: 14
Dołączył: 9.11.2005

Ostrzeżenie: (20%)
X----


Jak mogę utworzyc 2 formularze na podstawie jednego modelu, ale tak zeby te formularze mialy inne nazwy.

  1. <?php
  2. $this->form = new CategoryTreeForm();
  3. $this->form2 = new CategoryTreeForm();
  4. ?>


zeby w wyniku dostac
  1. <input id="category_tree1_name" type="text" name="category_tree1[name]"/>
  2. <input id="category_tree2_name" type="text" name="category_tree2[name]"/>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Lonas
post
Post #2





Grupa: Zarejestrowani
Postów: 576
Pomógł: 14
Dołączył: 9.11.2005

Ostrzeżenie: (20%)
X----


W klasie BaseCategoryLangForm dodałem


  1. <?php
  2. $this->widgetSchema->setNameFormat('category_lang'.$version,'[%s]');
  3. ?>


a w kontrolerze chcialem tworzyc formularz z parameterm $version

destroyerr: ale działa tak jak napisałeś przy ustawieniu tego w akcji.


EDIT:
A jak moge zrobic cos takiego :

Tworze sobie formularze w petli :
  1. <?php
  2.      foreach($this->langs as $lang){
  3.        $this->forms[$lang -> getName()]= new CategoryLangForm();
  4.        $this->forms[$lang -> getName()]->getWidgetSchema()->setNameFormat('category_lang_'.$lang -> getName().'[%s]');
  5.      }
  6. ?>


ale nie moge odebrac danych z tego formularza a robie to tak :

  1. <?php
  2. foreach($this->langs as $lang)
  3.      {
  4. $form1 = new CategoryLangForm();
  5.        $form1 ->getWidgetSchema()->setNameFormat('category_lang_'.$lang -> getName().'[%s]');
  6.        $form1 ->bind($request->getParameter('category_lang_'.$lang -> getName()), $request->getFiles('category_lang_'.$lang -> getName()));
  7.  
  8.         print_r($form1 ->getValues());
  9.      
  10.      }
  11. ?>


dostaje puste tablice bez pol z formularza

dodam że to :

  1. <?php
  2. print_r($request->getParameter('category_lang_'.$lang -> getName()));
  3. ?>


zwraca mi tablice

  1. Array ( [name] => ang [description] => ang [tags] => ang ) Array ( [name] => de [description] => de [tags] => de )


wszystkie dane przekazywane w POST

  1. Array
  2. (
  3. [category_tree] => Array
  4. (
  5. [id] =>
  6. [category_id] => 1
  7. [type_id] => 1
  8. [name] => pl
  9. [description] => sdfsdf
  10. [tags] => sdsd
  11. )
  12.  
  13. [category_lang_english] => Array
  14. (
  15. [id] =>
  16. [lang_id] => 2
  17. [category_id] =>
  18. [name] => ang
  19. [description] => ang
  20. [tags] => ang
  21. [is_visible] => on
  22. )
  23.  
  24. [category_lang_german] => Array
  25. (
  26. [id] =>
  27. [lang_id] => 3
  28. [category_id] =>
  29. [name] => d
  30. [description] => ded
  31. [tags] =>
  32. )
  33.  
  34. )


formularz category_tree jest dobrze bind-owany a 2 pozostale nie chca :/

Ten post edytował Lonas 15.05.2009, 12:57:35
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 13.10.2025 - 16:37