sf-api-example/src/AppBundle/Form/CategoryType.php
2016-11-24 00:12:34 +01:00

58 lines
1.5 KiB
PHP

<?php
namespace AppBundle\Form;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\Validator\Constraints\NotBlank;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use AppBundle\Entity\Category;
class CategoryType extends AbstractType
{
/**
* {@inheritdoc}
*/
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add(
'name',
TextType::class,
[
'label' => 'Nom',
// Je vire le required HTML pour permettre de valider
// le formulaire avec une donnée vide et non valide
// Tu pourras voir de quelle manière les erreurs
// sont remontées
'required' => false,
'constraints' => [
new NotBlank(),
],
]
);
}
/**
* {@inheritdoc}
*/
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'data_class' => Category::class,
// Ces 2 configurations sont importantes
'csrf_protection' => false,
'allow_extra_fields' => true,
]);
}
/**
* {@inheritdoc}
*/
public function getBlockPrefix()
{
// Très important également
return '';
}
}