====== Fixtures ====== Il s'agit d'un composant permettant de créer des données à la volée dans la base de données. ===== Installation du composant fixtures ===== composer require orm-fixtures --dev ===== Création d'une fixture ===== php bin/console make:fixtures Donner un nom à la fixture (p.ex. **ArticlesFixtures**). Une classe **ArticlesFixtures** est créée dans **src/DataFixtures**. Modifier la méthode **load** de cette classe. Par exemple : setTitle("Titre de l'article n°$i") ->setContent("

Contenu de l'article n°$i

") ->setImage("http://placehold.it/350x150") ->setCreatedAt(new \DateTime()); $manager->persist($article); } $manager->flush(); } }
===== Exécuter les fixtures ===== php bin/console doctrine:fixtures:load ^Attention, tout le contenu de la base de données est supprimé avant la génération des données des fixtures.| ===== Fixtures aléatoires avec Faker ===== Installer le composant **faker** (uniquement dans l'environnement **dev**) : composer require fzaninotto/faker --dev Ensuite il suffit de l'utiliser dans le code de la fixture : setNom($faker->name); $personne->setAdresse($faker->streetAddress); $personne->setVille($faker->city); $personne->setCodePostal($faker->postcode); $personne->setDescription($faker->text); $personne->setEmail($faker->email); $manager->persist($personne); } $manager->flush(); } } Voir [[https://github.com/fzaninotto/Faker|la doc de Faker]] pour toutes les possibilités.