Cikkek

Laravel Database Seeder

A Laravel vetőgépeket mutat be tesztadatok létrehozásához, amelyek hasznosak a projekt ellenőrzéséhez, adminisztrátori felhasználóval és előzetes adatokkaldefiszerepel az adatbázisban.

Ha van egy adminisztrátori projektje, amelynek nincs regisztrációs oldala, akkor mit fog tenni? Úgy értem, létre kell hoznia legalább egy adminisztrátor felhasználót. Tehát alapvetően be tud jelentkezni és hozzáfér a teljes adminisztrációs panelhez. De nincs a regisztrációs oldal az előlapon. csak a bejelentkezési oldalad van. Létrehozhat-e tehát egy adminisztrátori felhasználót közvetlenül az adatbázisból?, ha igen, mindig közvetlenül az adatbázisból kell új adminisztrátort létrehoznia, amikor létrehozza a projekt új konfigurációját. De azt javaslom, hogy hozzon létre admin seedert, hogy létrehozhasson admin felhasználót a laravel 8 seeder segítségével. Csak indíts parancsra a vetőgép futtatásához a laravel 8-ban.

Ugyanazok a dolgok, ha előre beállított konfigurációval rendelkezeldefinite, létrehozhat egy beállítási vetőt, és hozzáadhatja az előzetes konfigurációtdefinited az adatbázistáblába.

Mi az a Database Seeder a Laravelben

A Laravel egy egyszerű módszert kínál a tesztadatok adatbázisba történő bevitelére vetőosztályok segítségével. A Laravelben elhelyezheti adatbázisát, hogy tesztelési célból hamis adatokat adjon hozzá.

Példa a Laravel adatbázis-vetőre

Először létrehozunk egy vetőgépet a következő paranccsal:

php artisan make:seeder UserSeeder

A parancs futtatása után lesz egy fájlunk UserSeeder.php a mappában seeds. Az osztályok seed a könyvtárban tárolódnak 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')
        ]);
    }
}

Most nézzük meg, hogyan hívhatunk más vetőgépeket. A hívási metódus a DatabaseSeeder osztályon belül további magosztályok végrehajtására szolgál. Lehetővé teszi, hogy az adatbázis-vetést több fájlra ossza fel, hogy egyetlen vetőosztály se legyen túl nagy. A hívási metódus elfogadja a végrehajtandó vetőosztályok tömbjét.

Innovációs hírlevél
Ne maradjon le az innovációval kapcsolatos legfontosabb hírekről. Regisztráljon, hogy megkapja őket e-mailben.
<?php
  
use Illuminate\Database\Seeder;
   
class DatabaseSeeder extends Seeder
{
    public function run()
    {
         $this->call([
         UserSeeder::class,
         PostSeeder::class,
     ]);
    }
}

Parancs futtassa a seeder

php artisan db:seed

Parancs a vetőgép egyenkénti futtatására

php artisan db:seed –class=UserSeeder

Ön is futtathatja a seeding az adatbázisból a paranccsal migrate:fresh opcióval kombinálva –seed. Ez a parancs eldobja az összes táblát, újrafuttat minden áttelepítést, és újraépíti az adatbázist.

php artisan migrate:fresh --seed

Ercole Palmeri

Ön is tetszik:

Innovációs hírlevél
Ne maradjon le az innovációval kapcsolatos legfontosabb hírekről. Regisztráljon, hogy megkapja őket e-mailben.

Friss cikkek

Innovatív beavatkozás a kiterjesztett valóságba, egy Apple nézővel a Catania Poliklinikán

Szemplasztikai műtétet végeztek az Apple Vision Pro reklámmegjelenítővel a Catania Poliklinikán…

Május 3 2024

A színező oldalak előnyei gyerekeknek – a varázslatok világa minden korosztály számára

A finom motoros készségek színezéssel történő fejlesztése felkészíti a gyerekeket olyan összetettebb készségekre, mint az írás. Kiszínezni…

Május 2 2024

A jövő itt van: Hogyan forradalmasítja a hajózási ágazat a globális gazdaságot

A haditengerészeti szektor igazi világgazdasági hatalom, amely egy 150 milliárdos piac felé navigált...

Május 1 2024

A kiadók és az OpenAI megállapodásokat írnak alá a mesterséges intelligencia által feldolgozott információáramlás szabályozására

Múlt hétfőn a Financial Times bejelentette, hogy megállapodást köt az OpenAI-val. Az FT engedélyezi világszínvonalú újságírását…

30 április 2024