Piotr
Krajewski
web application
programmer
Temat: ActionStack i wiele formularzy na jednej stronie
Cześć wszystkim,tworząc sobie formularze do strony natknąłem się na duży problem którego nie potrafię rozwiązać w sposób "poprawny". Otóż chciałbym zamieścić na jednej stronie np. /account/settings (kontroler/akcja) dwa formularze:
- do zmiany danych użytkownika
- do zmiany hasła
Problem w tym, że jeśli zamieszczam je w sposób standardowy tzn:
public function settingsAction(){
$form = new Form_Account();
$form->setAction($this->view->url());
$form->populate($this->user);
if ($this->_request->isPost()){
if ($form->isValid($this->_request->getPost())){
$data = $form->getValues();
...
...
}
}
$this->view->settingsForm = $form;
$form = new Form_Password();
$form->setAction($this->view->url());
if ($this->_request->isPost()){
if ($form->isValid($this->_request->getPost())){
$data = $form->getValues();
...
...
}
}
$this->view->passwordForm = $form;
}
to wysyłając jeden formularz walidują mi się obydwa i błędy wyświetlają się w obydwu.
Moje pytanie jest następujące - jak można problem rozwiązać?
Dodam że probowałem rozdzielić akcje by settingsy były w jednej a zmiana hasła w drugiej akcji i używałem ActionStacka lecz po wysłaniu formularza przenosiło mnie na stronę danej akcji np. account/change-password czego bym nie chcial.
Jakieś propozycje?