Aller au contenu principal
Version: 5.x

đź’‰ Seeding

Introduction​

Le seeding est un mécanisme qui vous permettra d'hydrater votre base de donnée pour pouvoir l'utiliser dans votre développement. Le seeding dans Bow est associer à une table lors de la création.

Ajouter un seeder​

Pour ajouter un seeder on passe par php bow avec la commande add:seeder ensuite le nom de la table.

php bow add:seeder pets

Un fichier pets_seeder.php sera créé dans le dossier seeders. En voici le contenu:

/**
* The pets seeder
*
* @see https://github.com/fzaninotto/Faker for all documentation
*/
$faker = \Faker\Factory::create();

$seeds['pets'] = [];

foreach (range(1, 5) as $key) {
$seeds['pets'][] = [
'name' => $faker->name,
'created_at' => date('Y-m-d H:i:s'),
'updated_at' => date('Y-m-d H:i:s'),
];
}

return $seeds;

La clé pets est le nom de la table du seeding.

Lancer le seeding​

Pour lancer le seeding on utilise la commande seed:table suivi du nom de la table.

php bow seed:table pets

Vous avez la possibilité de lancer tout les seeding avec la commande seed:all. Cela fera le seeding de tout les fichiers dans seeders.

php bow seed:all

Helper​

Souvent vous sera tente de faire des seedins lorsque vous testez votre application. Le helper db_seed, très pratique vous permettra de faire des seeding en plein test par exemlpe

db_seed("user", $overrides = ["name" => "Franck"]);

Avec $overrides vous pouvez modifier des valeurs du seeding.

Il manque quelque chose ?

Si vous rencontrez des problèmes avec la documentation ou si vous avez des suggestions pour améliorer la documentation ou le projet en général, veuillez déposer une issue pour nous, ou envoyer un tweet mentionnant le compte Twitter @bowframework ou sur directement sur le github.