2011-08-09 13 views
3

twigテンプレートのフォームエラーをレンダリングするには、グローバルフォームエラーまたはフィールドエラーの場合は、form_errors twigマクロを使用するだけで差をつけます。twitterテンプレートのFormViewからグローバルフォームエラーを取得する

私のケースでは、グローバルエラーはフィールドエラーのように表示されないので、私はform_errorsの2つの場合にマクロを使用することはできません。フィールドエラーのマクロを使用することにしました& Symfony\Component\Form\FormViewオブジェクトからグローバルフォームエラーを取得したいと考えています。目標は、小枝テンプレート&のグローバルエラーを繰り返して、それらを私が望むようにレンダリングすることです。

実際、私はsymfony2のドキュメントで何か助けになることはありません。

+1

あなたの編集を回答として投稿して受け入れてください。同じ問題を抱えている人々が解決した内容を見ることができます:-) – richsage

答えて

5

最後に、自分で解決策を見つけました。同じことをしたい人には、を呼び出すことで、symfony 2.3ですべてのアクセサメソッドが削除されてパフォーマンスが向上します。FormError

2

$formView->get("errors"); 

は今です:

$formView->vars["errors"]; 

訪問UPGRADE-2.1.md、より多くの情報については、 "非推奨" を参照してください。

3

私はsymfony 2.5を使用しています。この方法で私にとって完璧に機能しました。

MyController

$error = new FormError(ErrorMessages::USER_NOT_AUTHENTICATED); 
$form->addError($error); 

MYVIEW

{% for error in form.vars.errors %} 
    <div class="alert alert-danger" role="alert"> 
    {{ error.messageTemplate|trans(error.messageParameters, 'validators')~'' }} 
    </div> 
{% endfor %} 

は、これが誰かの時間を節約することを願っています。

関連する問題