问题
I'm using Symfony2.1. It has a builtin CSRF protection for the forms. The error message returned when the CSRF token is invalid is: "The CSRF token is invalid. Please try to resubmit the form".
I show it on the top of the form in my Twig template by using the classic call:
{{ form_errors(form) }}
How can I change the returned message?
In alternative, a more advanced possibility is to catch this error type in order to show a lot of options/links in my Twig template. Any idea?
回答1:
Did you try to set in the file validators.{locale_code}.yml
to set a translation for key The CSRF token is invalid. Please try to resubmit the form
?
To change the default message you can try this out:
#MyBundle\Resources\translations\validators.en.yml
The CSRF token is invalid. Please try to resubmit the form : My custom CSRF error
The error message is thrown here and it is of FormError class...thus it should be possible to translate it.
来源:https://stackoverflow.com/questions/13452903/manually-change-or-catch-the-message-for-invalid-csrf-token-in-symfony2-1