Articles

Semoir de base de données Laravel

Laravel présente des semoirs pour créer des données de test, utiles pour vérifier le projet, avec un utilisateur administrateur et des données préalablesdefiterminé dans la base de données.

Chaque fois que vous avez un projet d'administration qui n'a pas de page d'inscription, qu'allez-vous faire ? Je veux dire, vous devez créer au moins un utilisateur administrateur. Donc, fondamentalement, il peut se connecter et accéder à l'ensemble du panneau d'administration. Mais vous n'avez pas la page d'inscription sur le front-end. vous n'avez que la page de connexion. Alors pouvez-vous créer un utilisateur admin directement à partir de la base de données ? Si oui, vous devez toujours créer un nouvel utilisateur admin à partir de la base de données directement lorsque vous créez une nouvelle configuration de votre projet. Mais je vous suggérerai de créer un semoir administrateur afin que vous puissiez créer un utilisateur administrateur en utilisant le semoir laravel 8. Il suffit de tirer sur commande pour exécuter le semoir dans laravel 8.

Mêmes choses, si vous avez une configuration de pré-réglagesdefinite, vous pouvez créer un seeder de paramètres et ajouter la pré configurationdefinié à la table de la base de données.

Qu'est-ce que Database Seeder à Laravel

Laravel fournit une méthode simple pour ensemencer des données de test dans une base de données à l'aide de classes de semences. Vous pouvez ensemencer votre base de données dans Laravel pour ajouter de fausses données dans votre base de données à des fins de test.

Exemple de Seeder de base de données à Laravel

Nous créons d'abord un seeder avec la commande suivante :

php artisan make:seeder UserSeeder

Après avoir exécuté la commande, nous aurons un fichier UserSeeder.php dans le dossier seeds. Les classes seed sont stockés dans le répertoire database/seeders.

namespace Database\Seeders;
 
use App\Models\User;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\Hash;
 
class UserSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        User::create([
            'name' => 'John Jackson',
            'email' => 'john@jackson.com',
            'mobile' => '123456789',
            'password' => Hash::make('john@123')
        ]);
    }
}

Voyons maintenant comment nous pouvons appeler d'autres seeders. La méthode d'appel est utilisée pour exécuter des classes de départ supplémentaires dans la classe DatabaseSeeder. Il vous permet de diviser votre amorçage de base de données en plusieurs fichiers afin qu'aucune classe d'amorçage ne devienne trop grande. La méthode d'appel accepte un tableau de classes de départ qui doivent être exécutées.

Bulletin d'innovation
Ne manquez pas les nouvelles les plus importantes sur l'innovation. Inscrivez-vous pour les recevoir par email.
<?php
  
use Illuminate\Database\Seeder;
   
class DatabaseSeeder extends Seeder
{
    public function run()
    {
         $this->call([
         UserSeeder::class,
         PostSeeder::class,
     ]);
    }
}

Commande pour exécuter le seeder

php artisan db:seed

Commande pour exécuter un semoir individuellement

php artisan db:seed –class=UserSeeder

Vous pouvez également exécuter le seeding de la base de données à l'aide de la commande migrate:fresh en combinaison avec l'option –seed. Cette commande supprime toutes les tables, réexécute toutes les migrations et reconstruit la base de données.

php artisan migrate:fresh --seed

Ercole Palmeri

Vous pouvez également être intéressé par:

Bulletin d'innovation
Ne manquez pas les nouvelles les plus importantes sur l'innovation. Inscrivez-vous pour les recevoir par email.

Articles récents

Intervention innovante en réalité augmentée, avec une visionneuse Apple à la polyclinique de Catane

Une opération d'ophtalmoplastie à l'aide de la visionneuse commerciale Apple Vision Pro a été réalisée à la polyclinique de Catane…

3 mai 2024

Les avantages des pages à colorier pour les enfants - un monde de magie pour tous les âges

Développer la motricité fine grâce au coloriage prépare les enfants à des compétences plus complexes comme l’écriture. Colorier…

2 mai 2024

L’avenir est là : comment le secteur du transport maritime révolutionne l’économie mondiale

Le secteur naval est une véritable puissance économique mondiale, qui a navigué vers un marché de 150 milliards...

1 mai 2024

Les éditeurs et OpenAI signent des accords pour réguler les flux d'informations traitées par l'intelligence artificielle

Lundi dernier, le Financial Times a annoncé un accord avec OpenAI. FT autorise son journalisme de classe mondiale…

30 avril 2024