RAMBAUD Evan
Connexion

Certification : Développer avec Symfony 5 et 6

Dans cette formation, j'ai appris à utiliser le framework Symfony 5 et 6 dans le développement de site WEB et d'API. Cependant, malgré une formation suivie, la principale source de connaissance a été par le développement de ce site WEB et la documentation de Symfony avec son exemple.

Formation suivi : https://openclassrooms.com/fr/courses/5489656-construisez-un-site-web-a-l-aide-du-framework-symfony-5

Resource pour aller plus loin : https://symfony.com/doc/current/index.html, https://twig.symfony.com/doc/3.x/ et https://www.doctrine-project.org/projects/doctrine-orm/en/2.11/index.html

Mes objectifs :

Pourquoi cette formation :

Les outils que j'ai utilisé :

Quelques notions:

Cette formation a permis de voir de nombreuses notions, telles que les contrôleurs, les templates, les principes de sécurité, la gestion des utilisateurs, encore…

Mais également l'utilisation de l'ORM (Object Relation Mapping) Doctrine2 intégré a symfony, qui utilise une entité et repository :

namespace App\Entity;
use App\Repository\EtatProjetRepository;
use Doctrine\ORM\Mapping as ORM;
#[ORM\Entity(repositoryClass: EtatProjetRepository::class)]
class EtatProjet
{
    #[ORM\Id]
    #[ORM\GeneratedValue]
    #[ORM\Column(type: 'integer')]
    private $id;
    #[ORM\Column(type: 'string', length: 50)]
    private $libelle;
    public function getId(): ?int
    {
        return $this->id;
    }
    public function getLibelle(): ?string
    {
        return $this->libelle;
    }
    public function setLibelle(string $libelle): self
    {
        $this->libelle = $libelle;
        return $this;
    }
}

Mais également, le moteur de template TWIG, et la gestion des formulaires:

public function buildForm(FormBuilderInterface $builder, array $options): void
{
    $builder
        ->add('libelle', TextType::class, [
            'required' => true,
            'mapped' => true,
            'empty_data' => 'libelle',
            'label' => 'Libelle :',
            'constraints' => [
                new NotBlank([
                    'message' => 'Veuillez entrer un libelle.'
                ]),
            new Length([
                'min' => '3',
                'minMessage' => 'Votre libelle doit avoir au moins  caractères.',
                'max' => '50',
                'maxMessage' => 'Votre libelle doit avoir maximun  caractères.',
            ])
        ]
    ])
    ->add('submit', SubmitType::class, [
        'label' => "Enregistrer"
    ]);
}

Detail supplémentaire
Certification : développer avec Symfony 5 et 6
Information générale

Libellé : Certification : développer avec Symfony 5 et 6
Date publication : 09/05/2022

Définition de la publication

Type de la publication : Certification
Catégorie de la publication :

  • WEB
  • Développement de compétence

Personne ayant participé à la rédaction

L'auteur : Rambaud Evan (erloup)
Les éditeurs :

Fichier associé

Les documents :


L'icone : Icone certification