Artikler

Laravel Database Seeder

Laravel introducerer seeders til oprettelse af testdata, nyttige til at verificere projektet, med en administratorbruger og prædatadefiafsluttet i databasen.

Når du har et administratorprojekt, der ikke har en tilmeldingsside, hvad vil du så gøre? Jeg mener, du skal oprette mindst én admin-bruger. Så dybest set kan han logge ind og få adgang til hele adminpanelet. Men du har ikke tilmeldingssiden på forsiden. du har kun login-siden. Så kan du oprette en admin-bruger direkte fra databasen?, hvis ja, bør du altid oprette en ny admin-bruger fra databasen direkte, når du opretter en ny konfiguration af dit projekt. Men jeg vil foreslå dig at oprette admin seeder, så du kan oprette admin bruger ved hjælp af laravel 8 seeder. Bare skyd på kommando for at køre seeder i laravel 8.

Samme ting, hvis du har forudindstillingskonfigurationdefiaften, kan du oprette en indstillinger seeder og tilføje præ-konfigurationendefitil databasetabellen.

Hvad er Database Seeder i Laravel

Laravel giver en nem metode til at seed testdata i en database ved hjælp af seeder-klasser. Du kan seede din database i Laravel for at tilføje falske data til din database til testformål.

Eksempel på Database Seeder i Laravel

Først opretter vi en seeder med følgende kommando:

php artisan make:seeder UserSeeder

Efter at have kørt kommandoen, har vi en fil UserSeeder.php i mappen seeds. Klasserne seed er gemt i biblioteket 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')
        ]);
    }
}

Lad os nu se, hvordan vi kan kalde andre såmaskiner. Kaldmetoden bruges til at udføre yderligere seed-klasser inden for DatabaseSeeder-klassen. Det giver dig mulighed for at opdele din database seeding i flere filer, så ingen enkelt seeder klasse bliver for stor. Kaldmetoden accepterer en række seeder-klasser, der skal udføres.

Nyhedsbrev om innovation
Gå ikke glip af de vigtigste nyheder om innovation. Tilmeld dig for at modtage dem via e-mail.
<?php
  
use Illuminate\Database\Seeder;
   
class DatabaseSeeder extends Seeder
{
    public function run()
    {
         $this->call([
         UserSeeder::class,
         PostSeeder::class,
     ]);
    }
}

Kommando til at køre seeder

php artisan db:seed

Kommando til at køre en såmaskine individuelt

php artisan db:seed –class=UserSeeder

Du kan også køre seeding af databasen ved hjælp af kommandoen migrate:fresh i kombination med muligheden –seed. Denne kommando sletter alle tabeller, kører alle migreringer igen og genopbygger databasen.

php artisan migrate:fresh --seed

Ercole Palmeri

Du kan måske også lide:

Nyhedsbrev om innovation
Gå ikke glip af de vigtigste nyheder om innovation. Tilmeld dig for at modtage dem via e-mail.

Seneste artikler

Veeam har den mest omfattende support til ransomware, fra beskyttelse til respons og gendannelse

Coveware by Veeam vil fortsætte med at levere responstjenester til cyberafpresning. Coveware vil tilbyde kriminaltekniske og afhjælpende funktioner...

23 April 2024

Grøn og digital revolution: Hvordan prædiktiv vedligeholdelse transformerer olie- og gasindustrien

Forudsigende vedligeholdelse revolutionerer olie- og gassektoren med en innovativ og proaktiv tilgang til anlægsstyring...

22 April 2024

Britisk antitrust-tilsynsmyndighed rejser BigTech-alarm over GenAI

Det britiske CMA har udsendt en advarsel om Big Techs adfærd på markedet for kunstig intelligens. Der…

18 April 2024

Casa Green: energirevolution for en bæredygtig fremtid i Italien

Dekretet om "grønne huse", der er formuleret af Den Europæiske Union for at øge bygningers energieffektivitet, har afsluttet sin lovgivningsproces med...

18 April 2024