Description de formulaire Symfony2 événements?
C'est le FormEvents
classe de Symfony2 dépôt sur github. Il est accessible à partir de l'article principal, Comment Générer Dynamiquement les Formulaires en Utilisant les Évènements de formulaires.
Personne konws exactement quand ces événements sont appelés dans le flux?
namespace Symfony\Component\Form;
/**
* @author Bernhard Schussek <[email protected]>
*/
final class FormEvents
{
const PRE_BIND = 'form.pre_bind';
const POST_BIND = 'form.post_bind';
const PRE_SET_DATA = 'form.pre_set_data';
const POST_SET_DATA = 'form.post_set_data';
const BIND_CLIENT_DATA = 'form.bind_client_data';
const BIND_NORM_DATA = 'form.bind_norm_data';
const SET_DATA = 'form.set_data';
}
Vous devez vous connecter pour publier un commentaire.
Il y a deux types d'événements:
DataEvent - accès en lecture seule aux données de formulaire. "Pré" et "Post" des événements sont en lecture seule.
FilterDataEvent - événement qui permet à la forme des données à modifier.
forme.pre_bind
DataEvent
déclenché avant que les données est lié à la forme. Déclenchée parSymfony\Component\Form\Form::bind()
forme.post_bind
DataEvent
déclenchée après des données est lié à la forme. Déclenchée parSymfony\Component\Form\Form::bind()
forme.pre_set_data
DataEvent
déclenchée avant que les champs sont remplis avec des données par défaut. Déclenchée parSymfony\Component\Form\Form::setData()
forme.post_set_data
DataEvent
déclenché une fois que les champs sont remplis avec des données par défaut. Déclenchée parSymfony\Component\Form\Form::setData()
forme.bind_client_data
FilterDataEvent
déclenché avant que les données est lié à la forme. Déclenchée parSymfony\Component\Form\Form::bind()
forme.bind_norm_data
FilterDataEvent
déclenchée après que les données ont été normalisées. Déclenchée parSymfony\Component\Form\Form::bind()
. VoirSymfony\Component\Form\Extension\Core\EventListener\FixUrlProtocolListener
(ajouté par laUrlType
pour un exemple)forme.set_data
FilterDataEvent
déclenchée alors que les données par défaut est lié. Déclenchée parSymfony\Component\Form\Form::setData()
Je le recommande à fouiner dans la classe de la Forme elle-même pour obtenir une meilleure idée de quand ces événements sont déclenchés, et comment vous pouvez les utiliser.
form.bind_client_data
,form.bind_norm_data
,form.set_data
. 2.1, la forme des écouteurs d'événement désormais recevoir unFormEvent
objet au lieu de le obsolèteFilterDataEvent
etDataEvent
objets, qui seront supprimés dans le paragraphe 2.3.