@@ -288,10 +288,13 @@ Creating and binding an event listener to the form is very easy::
288288
289289 use Symfony\Component\Form\FormEvent;
290290 use Symfony\Component\Form\FormEvents;
291+ use Symfony\Component\Form\Extension\Core\Type\TextType;
292+ use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
293+ use Symfony\Component\Form\Extension\Core\Type\EmailType;
291294
292295 $form = $formFactory->createBuilder()
293- ->add('username', 'text' )
294- ->add('show_email', 'checkbox' )
296+ ->add('username', TextType::class )
297+ ->add('show_email', CheckboxType::class )
295298 ->addEventListener(FormEvents::PRE_SUBMIT, function (FormEvent $event) {
296299 $user = $event->getData();
297300 $form = $event->getForm();
@@ -304,7 +307,7 @@ Creating and binding an event listener to the form is very easy::
304307 // If the data was submitted previously, the additional value that is
305308 // included in the request variables needs to be removed.
306309 if (true === $user['show_email']) {
307- $form->add('email', 'email');
310+ $form->add('email', EmailType::class
308311 } else {
309312 unset($user['email']);
310313 $event->setData($user);
@@ -317,14 +320,17 @@ Creating and binding an event listener to the form is very easy::
317320When you have created a form type class, you can use one of its methods as a
318321callback for better readability::
319322
323+ use Symfony\Component\Form\Extension\Core\Type\TextType;
324+ use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
325+
320326 // ...
321327
322328 class SubscriptionType extends AbstractType
323329 {
324330 public function buildForm(FormBuilderInterface $builder, array $options)
325331 {
326- $builder->add('username', 'text' );
327- $builder->add('show_email', 'checkbox' );
332+ $builder->add('username', TextType::class );
333+ $builder->add('show_email', CheckboxType::class );
328334 $builder->addEventListener(
329335 FormEvents::PRE_SET_DATA,
330336 array($this, 'onPreSetData')
@@ -351,6 +357,7 @@ Event subscribers have different uses:
351357 use Symfony\Component\EventDispatcher\EventSubscriberInterface;
352358 use Symfony\Component\Form\FormEvent;
353359 use Symfony\Component\Form\FormEvents;
360+ use Symfony\Component\Form\Extension\Core\Type\EmailType;
354361
355362 class AddEmailFieldListener implements EventSubscriberInterface
356363 {
@@ -370,7 +377,7 @@ Event subscribers have different uses:
370377 // Check whether the user from the initial data has chosen to
371378 // display his email or not.
372379 if (true === $user->isShowEmail()) {
373- $form->add('email', 'email' );
380+ $form->add('email', EmailType::class );
374381 }
375382 }
376383
@@ -387,7 +394,7 @@ Event subscribers have different uses:
387394 // If the data was submitted previously, the additional value that
388395 // is included in the request variables needs to be removed.
389396 if (true === $user['show_email']) {
390- $form->add('email', 'email' );
397+ $form->add('email', EmailType::class );
391398 } else {
392399 unset($user['email']);
393400 $event->setData($user);
@@ -397,11 +404,14 @@ Event subscribers have different uses:
397404
398405 To register the event subscriber, use the addEventSubscriber() method::
399406
407+ use Symfony\Component\Form\Extension\Core\Type\TextType;
408+ use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
409+
400410 // ...
401411
402412 $form = $formFactory->createBuilder()
403- ->add('username', 'text' )
404- ->add('show_email', 'checkbox' )
413+ ->add('username', TextType::class )
414+ ->add('show_email', CheckboxType::class )
405415 ->addEventSubscriber(new AddEmailFieldListener())
406416 ->getForm();
407417
0 commit comments