Članci

Laravel Database Seeder

Laravel uvodi seedere za kreiranje testnih podataka, korisni za verifikaciju projekta, sa administratorskim korisnikom i pred podacimadefizavršeno u bazi podataka.

Kad god imate administratorski projekat koji nema stranicu za prijavu, šta ćete onda učiniti? Mislim, morate kreirati barem jednog korisnika administratora. Dakle, u osnovi se može prijaviti i pristupiti cijelom admin panelu. Ali nemate stranicu za prijavu na prednjoj strani. imate samo stranicu za prijavu. Dakle, možete li kreirati administratorskog korisnika direktno iz baze podataka?, ako jeste, uvijek biste trebali kreirati novog korisnika administratora direktno iz baze podataka kada kreirate novu konfiguraciju vašeg projekta. Ali ja ću vam predložiti da kreirate admin seeder tako da možete kreirati administratorskog korisnika koristeći laravel 8 seeder. Samo pucajte na komandu da pokrenete sider u Laravel 8.

Iste stvari, ako imate konfiguraciju unaprijeddefina kraju, možete kreirati sejač postavki i dodati pretkonfiguracijudefizavršio na tabeli baze podataka.

Šta je Database Seeder u Laravelu

Laravel pruža jednostavnu metodu za sijanje testnih podataka u bazu podataka koristeći seeder klase. Možete postaviti svoju bazu podataka u Laravel da dodate lažne podatke u svoju bazu podataka za potrebe testiranja.

Primjer Database Seeder-a u Laravel-u

Prvo kreiramo sijačicu sa sljedećom naredbom:

php artisan make:seeder UserSeeder

Nakon pokretanja naredbe, imat ćemo datoteku UserSeeder.php u folderu seeds. Časovi seed su pohranjeni u imeniku 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')
        ]);
    }
}

Sada da vidimo kako možemo nazvati druge sijačice. Metoda poziva se koristi za izvršavanje dodatnih početnih klasa unutar klase DatabaseSeeder. Omogućava vam da podijelite seeding baze podataka u više datoteka tako da nijedna klasa sijača ne postane prevelika. Metoda poziva prihvata niz klasa sidera koje treba izvršiti.

Inovacijski bilten
Ne propustite najvažnije vijesti o inovacijama. Prijavite se da ih primate putem e-pošte.
<?php
  
use Illuminate\Database\Seeder;
   
class DatabaseSeeder extends Seeder
{
    public function run()
    {
         $this->call([
         UserSeeder::class,
         PostSeeder::class,
     ]);
    }
}

Naredba za pokretanje seeder

php artisan db:seed

Naredba za pojedinačno pokretanje sijačice

php artisan db:seed –class=UserSeeder

Takođe možete pokrenuti seeding baze podataka pomoću naredbe migrate:fresh u kombinaciji sa opcijom –seed. Ova komanda ispušta sve tabele, ponovo pokreće sve migracije i ponovo gradi bazu podataka.

php artisan migrate:fresh --seed

Ercole Palmeri

Možda će vam se takođe svidjeti:

Inovacijski bilten
Ne propustite najvažnije vijesti o inovacijama. Prijavite se da ih primate putem e-pošte.

Nedavni članak

Veeam nudi najsveobuhvatniju podršku za ransomware, od zaštite do odgovora i oporavka

Coveware od strane Veeam-a će nastaviti da pruža usluge odgovora na incidente u slučaju sajber iznude. Coveware će ponuditi mogućnosti forenzike i sanacije…

23 april 2024

Zelena i digitalna revolucija: Kako prediktivno održavanje transformira industriju nafte i plina

Prediktivno održavanje revolucionira sektor nafte i plina, s inovativnim i proaktivnim pristupom upravljanju postrojenjima.…

22 april 2024

Britanski antimonopolski regulator podigao je BigTech uzbunu zbog GenAI

UK CMA izdao je upozorenje o ponašanju Big Tech-a na tržištu umjetne inteligencije. Tamo…

18 april 2024

Casa Green: energetska revolucija za održivu budućnost u Italiji

Uredba o „zelenim kućama“, koju je formulisala Evropska unija za poboljšanje energetske efikasnosti zgrada, završila je svoj zakonodavni proces sa…

18 april 2024