Artiklar

Laravel Database Seeder

Laravel introducerar seeders för att skapa testdata, användbara för att verifiera projektet, med en administratörsanvändare och fördatadefifinns i databasen.

När du har ett administratörsprojekt som inte har en registreringssida, vad ska du då göra? Jag menar, du måste skapa minst en administratörsanvändare. Så i princip kan han logga in och komma åt hela adminpanelen. Men du har inte registreringssidan i fronten. du har bara inloggningssidan. Så kan du skapa en adminanvändare direkt från databasen?, om ja, bör du alltid skapa en ny adminanvändare från databasen direkt när du skapar en ny konfiguration av ditt projekt. Men jag kommer att föreslå dig att skapa admin seeder så att du kan skapa admin användare med laravel 8 seeder. Skjut bara på kommando för att köra seeder i laravel 8.

Samma saker, om du har förinställningskonfigurationdefipå kvällen kan du skapa en inställningssåmaskin och lägga till förkonfigurationendefiansluten till databastabellen.

Vad är Database Seeder i Laravel

Laravel tillhandahåller en enkel metod för att seed testdata i en databas med hjälp av såningsklasser. Du kan seed din databas i Laravel för att lägga till falska data i din databas för teständamål.

Exempel på Database Seeder i Laravel

Först skapar vi en seeder med följande kommando:

php artisan make:seeder UserSeeder

Efter att ha kört kommandot kommer vi att ha en fil UserSeeder.php i mappen seeds. Klasserna seed lagras i katalogen 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')
        ]);
    }
}

Låt oss nu se hur vi kan kalla andra såmaskiner. Anropsmetoden används för att exekvera ytterligare seed-klasser inom DatabaseSeeder-klassen. Det låter dig dela upp din databassådd i flera filer så att ingen enskild såningsklass blir för stor. Anropsmetoden accepterar en array av såningsklasser som måste exekveras.

Nyhetsbrev för innovation
Missa inte de viktigaste nyheterna om innovation. Registrera dig för att få dem via e-post.
<?php
  
use Illuminate\Database\Seeder;
   
class DatabaseSeeder extends Seeder
{
    public function run()
    {
         $this->call([
         UserSeeder::class,
         PostSeeder::class,
     ]);
    }
}

Kommando för att köra seeder

php artisan db:seed

Kommando för att köra en såmaskin individuellt

php artisan db:seed –class=UserSeeder

Du kan också köra seeding av databasen med kommandot migrate:fresh i kombination med alternativet –seed. Det här kommandot tar bort alla tabeller, kör alla migreringar igen och bygger om databasen.

php artisan migrate:fresh --seed

Ercole Palmeri

Du kanske också gillar:

Nyhetsbrev för innovation
Missa inte de viktigaste nyheterna om innovation. Registrera dig för att få dem via e-post.

Articoli recenti

Fördelarna med målarbok för barn - en värld av magi för alla åldrar

Att utveckla finmotorik genom färgläggning förbereder barn för mer komplexa färdigheter som att skriva. Att färglägga…

2 maj 2024

Framtiden är här: Hur sjöfartsindustrin revolutionerar den globala ekonomin

Marinesektorn är en sann global ekonomisk makt, som har navigerat mot en marknad på 150 miljarder...

1 maj 2024

Publishers och OpenAI tecknar avtal för att reglera flödet av information som bearbetas av artificiell intelligens

I måndags tillkännagav Financial Times ett avtal med OpenAI. FT licensierar sin journalistik i världsklass...

30 April 2024

Onlinebetalningar: Här är hur streamingtjänster får dig att betala för alltid

Miljontals människor betalar för streamingtjänster och betalar månatliga prenumerationsavgifter. Det är en allmän uppfattning att du...

29 April 2024