📚 Cheatsheet

Une collection organisée de snippets de code pour accélérer votre développement. Parcourez, recherchez et copiez en un clic.

Snippets 8

Retour
Ajouter des contraintes de validation (attributs)
Intermédiaire
use Symfony\Component\Validator\Constraints as Assert;

#[Assert\NotBlank]
#[Assert\Length(min: 3)]
private ?string $titre = null;
Construire un formulaire (FormBuilder)
Facile
public function buildForm(FormBuilderInterface $builder, array $options): void
{
    $builder
        ->add('titre', TextType::class)
        ->add('contenu', TextareaType::class)
        ->add('sauvegarder', SubmitType::class);
}
Créer et gérer un formulaire dans un contrôleur
Facile
$article = new Article();
$form = $this->createForm(ArticleType::class, $article);
$form->handleRequest($request);

if ($form->isSubmitted() && $form->isValid()) {
    // ... persister l'article
}
Générer une classe de formulaire
Facile
php bin/console make:form ArticleType
Lier un formulaire à une entité
Intermédiaire
public function configureOptions(OptionsResolver $resolver): void
{
    $resolver->setDefaults([
        'data_class' => Article::class,
    ]);
}
Rendre un formulaire champ par champ
Facile
{{ form_start(monFormulaire) }}
    {{ form_row(monFormulaire.titre) }}
    {{ form_row(monFormulaire.contenu) }}
{{ form_end(monFormulaire) }}
Rendre un formulaire entier dans Twig
Facile
{{ form(monFormulaire) }}
Type de champ 'EntityType'
Avancé
use Symfony\Bridge\Doctrine\Form\Type\EntityType;

$builder->add('categorie', EntityType::class, [
    'class' => Categorie::class,
    'choice_label' => 'nom',
]);