2011-08-09 38 views
3

要在樹枝模板中呈現表單錯誤,只需要使用form_errors樹枝宏而沒有區別,如果它是全局表單錯誤或字段錯誤。從樹形模板的FormView中獲取全局表單錯誤

但在我的情況下,全局錯誤不會呈現爲字段錯誤,所以我不能在兩種情況下使用宏樹枝form_errors。我決定使用宏來處理字段錯誤&我想從Symfony\Component\Form\FormView對象中獲取全局表單錯誤。目標是迭代樹枝模板中的全局錯誤&渲染它們就像我想要的。

其實,我沒有找到任何可以幫助我的symfony2文檔的資源。

+1

請發佈您的編輯作爲答案並接受它,以便具有相同問題的人可以看到什麼解決了它:-) – richsage

回答

5

最後,我自己找到了解決方案。對於想要做同樣事情的人來說,解決方案是調用$formView->get("errors"),它可以在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 %} 

希望這將節省時間某人。

相關問題