Mam taki problem. Wygenerowałem standardowo formularz, i chciałbym tylko i wyłącznie pobrać obiekt bez jego zapisu. Niestety wyskakuje błąd walidacji... kompletnie nie mam pojęcia dlaczego.
Pokaże na przykładzie o co chodzi:
to jest kod klasycznie generowany przez symfony+doctrine i to zadziała
protected function processForm(sfWebRequest $request, sfForm $form) { $form->bind($request->getParameter($form->getName()), $request->getFiles($form->getName())); if ($form->isValid()) { $obj = $form->save(); $this->redirect('rejestracja/edit?id='.$obj->getId()); } }
ten kod przynajmniej w teorii(dokumentacja) powinien działać tak samo:
protected function processForm(sfWebRequest $request, sfForm $form) { $form->bind($request->getParameter($form->getName()), $request->getFiles($form->getName())); if ($form->isValid()) { $obj = $form->getObject(); $obj->save(); $this->redirect('rejestracja/edit?id='.$obj->getId()); } }
ale wyskakują mi poniższe błędy:
Validation failed in class user
2 fields had validation errors:
* 1 validator failed on mail (notnull)
* 1 validator failed on pass (notnull)
kompletnie nie mam pojęcia dlaczego, czyszczę clear-cashe i nadal nic... czy macie pomysł co może być grane?
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
mea culpa
już wiem o co chodzi, przede wszystkim muszę włożyć nawet w tworzony formularz pusty obiekt



oto kod:
protected function processForm(sfWebRequest $request, sfForm $form) { $form->bind($request->getParameter('user'), $request->getFiles('user')); if ($form->isValid()) { $this->form->updateObject(); $user = $this->form->getObject(); $user->save(); $this->redirect('rejestracja/edit?id='.$user->getId()); }