Post

Symfony – Les repositories

Symfony – Les repositories

Cours 11 — Les repositories

Introduction

Un repository permet de rechercher des données dans la base de données.

Chaque entité possède généralement son propre repository.

Exemple :

1
2
3
Patient
↓
PatientRepository

Création automatique

Lors de la création d’une entité :

1
php bin/console make:entity

Symfony crée automatiquement un repository.

Exemple :

1
src/Repository/PatientRepository.php

Utiliser un repository

Dans un contrôleur :

1
2
3
public function show(PatientRepository $patientRepository): Response
{
}

Symfony fournit automatiquement le repository.


Rechercher par identifiant

1
$patient = $patientRepository->find(12);

Résultat :

1
Recherche du patient dont l'identifiant vaut 12.

Rechercher plusieurs enregistrements

1
$patients = $patientRepository->findAll();

Résultat :

1
Retourne tous les patients.

Rechercher avec une condition

1
2
3
$patients = $patientRepository->findBy([
    'nom' => 'Durand'
]);

Résultat :

1
Retourne tous les patients dont le nom est Durand.

Rechercher un seul enregistrement

1
2
3
$patient = $patientRepository->findOneBy([
    'nom' => 'Durand'
]);

Résultat :

1
Retourne le premier patient trouvé.

Conclusion

Le repository permet de rechercher des données dans la base.

Méthodes à retenir :

1
2
3
4
find()
findAll()
findBy()
findOneBy()

Schéma mental :

1
2
3
4
5
Entité
↓
Repository
↓
Base de données
This post is licensed under CC BY 4.0 by the author.