Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [ZendFramework] Formularz, nazwy pól formularza
Forum PHP.pl > Forum > PHP > Frameworki
Wolfie
Witam,


Napisałem sobie taką klasę dziedziczącą po Zend_Form :


  1. class Form_Album extends Zend_Form {
  2.  
  3. public function __construct($options = null){
  4. parent::__construct($options);
  5. $this->setName('album');
  6.  
  7. $id = new Zend_Form_Element_Hidden($id);
  8.  
  9. $artist = new Zend_Form_Element_Text('artist');
  10. $artist->setLabel('Artist')
  11. ->setRequired(true)
  12. ->addFilter('StripTags')
  13. ->addFilter('StringTrim')
  14. ->addValidator('NotEmpty');
  15.  
  16. $title = new Zend_Form_Element_Text('title');
  17. $title->setLabel('Title')
  18. ->setRequired(true)
  19. ->addFilter('StripTags')
  20. ->addFilter('StringTrim')
  21. ->addValidator('NotEmpty');
  22.  
  23. $submit = new Zend_Form_Element_Submit('submit');
  24. $submit->setAttrib('id','submitbutton');
  25.  
  26. $this->addElements(array($id,$artist,$title,$submit));
  27.  
  28. }
  29. }


To jest przykład z tutoriala pod versje 1.9

Ten formularz jest odpowiedzialny za dodawanie nowego albumu do bazy danych

No i teraz odpalam sobie odpowiedni kontroler 'index' i akcje 'add'

i dostaję taki komunikat :

Cytat
Exception information:
Message: Zend_Form_Element requires each element to have a name


Czy ktoś może mi powiedzieć gdzie tutaj jest bład ?


Przecież jest wywołana metoda setName z parametrem 'album', nie wiem o co może w tym chodzić, jestem zielony jeśli chodzi o Zend, proszę o pomoc....




darko
Tak tylko że setName ustawia nazwę formularza, a Ty potrzebujesz jeszcze ustawić atrybut name dla każdego elementu formularza
batman
Element hidden nie ma nazwy i stąd ten błąd.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.