2012-01-02 12 views
0

symfony 1.4のすべてのフォームに問題があります。彼らは良いデータで動作し、私の新しいオブジェクトが作成されます...しかし、私は悪いデータを与えると、私のフォームは何も期待どおりに何もエラーはありません。自分の行動でsymfony 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 
} 

簡単に言えば、私のフォームは良いデータで動作します。しかし、私は悪いデータを与えているときに表示するためのエラーはありません。私のフォームは私のデータベースに何かを追加しません。バリデーションは、バインドで例外を発生させるために機能しますが、表示する空のフォームを取得するだけです。

+0

$ form-> hasErrors()および$ form-> getErrors()の内容を確認しようとしましたか?たぶんあなたはテンプレートにそれらを表示するのを忘れましたか? – Itako

+0

HasErrorsとgetエラーにエラーはありません。私はすべての私のウィジェットのために私のrenderError()を持っています。 – Perello

答えて

0

ビューには、$ formのスコープが必要です。上記のあなたのコードは不完全かもしれません。上記のアクションで、アクションが終了してビューに移動し、ビューに次のような表示がある場合、検証エラーはフォームにインラインで表示されます。

<?php echo $form ?> 
+0

私はあなたのポイントを得るか分からない。私のフォームは、アクションからそれを得るビューから$フォームを取得する部分の内部です。フォームは適切なデータで正しく動作しますが(私のバリデータによると)、フォームが無効な場合は空のフォームが表示されます。したがって、エラーも値もありません。空のフォームを取得するのに対し、私のビューの$ $フォームはバインディングを持つオブジェクトのフォームと同じです。だから私は本当にどこに問題があるか分からない。それは良いデータで動作するので、私のバリデーターは悪いデータを与えても動作しますが、エラーは$ form-> bindと私のビューとの間で消滅します。 – Perello

関連する問題