2012-01-02 2 views
0

심포니 1.4의 모든 양식에 문제가 있습니다. 그들은 좋은 데이터로 작업하고 새로운 객체는 생성됩니다 ...하지만 잘못된 데이터를 주면 내 양식은 예상대로 작동하지만 오류가 없습니다. 내 행동심포니 1.4 양식에 표시 할 유효성 검사 오류가 없습니다.

내 코드 :

$this->form = new EtablissementForm(); 

$this->form->bind(
    $request->getParameter($this->form->getName()), 
    $request->getFiles($this->form->getName()) 
); 

편집 :

를 해결. 잠 좀 자 겠어. 이것은 정말 바보 같은 실수였습니다. 나는 새로운 E를 제거했는지 확신했다 ... Form(); 내 행동에 대한 내 견해로, 실제로 나는 그것을 ... 다른 파일에서했다.

그래서 내 $ 양식은 빈 양식으로 덮어 씁니다. 그래서 문제가 해결되었습니다.

if ($this->form->isValid()) 
{ 
    //some things and a redirect 
} 

간단히 말해, 제 양식은 좋은 데이터와 함께 작동합니다. 하지만 나쁜 데이터를 제공 할 때 표시 할 오류가 없습니다. 그리고 내 양식은 내 데이터베이스에 무언가를 추가하지 않습니다. 유효성 검사는 bind에서 예외를 발생 시키므로 작동하지만, 표시 할 빈 폼을 얻는다.

+0

$ form-> hasErrors() 및 $ form-> getErrors()에 무엇이 있는지 확인하려고 했습니까? 어쩌면 템플릿에 표시하는 것을 잊은 것일까 요? – Itako

+0

HasErrors 및 get 오류는 오류가 없습니다. 그리고 난 내 모든 위젯에 대한 내 renderError() 있습니다. – Perello

답변

0

보기에 $ 양식의 올바른 범위가 있어야합니다. 위의 코드가 불완전 할 수 있습니다. 위에 제시된 동작에서 작업이 끝나면보기로 이동하고보기에는 다음과 같은 내용이 포함되어 있습니다. 양식의 유효성 검사 오류가 인라인으로 표시되어야합니다.

<?php echo $form ?> 
+0

나는 당신의 요점을 잘 모르겠다. 내 양식은 동작 내부에서 가져 오는보기에서 $ 양식을 가져 오는 부분 내부에 있습니다. 양식 (내 유효성 검사기에 따라) 좋은 데이터와 제대로 작동하지만, 내 양식이 유효하지 않은 경우, 나는 빈 양식을 얻을. 따라서 오류나 값은 없습니다. 내보기에서 내 $ 양식은 바인딩을 가지고 동일한 개체 양식이지만 나는 빈 양식을 얻을. 그래서 나는 문제가 어디에 있는지 정말로 이해하지 못한다. 좋은 데이터와 함께 작동하기 때문에 잘못된 데이터를 제공 할 때 유효성 검사기가 작동하지만 $ form-> bind와 my view 사이에 오류가 사라집니다. – Perello

관련 문제