グッズ

Laravel データベースシーダー

Laravelは、管理者ユーザーと事前データを使用して、プロジェクトの検証に役立つテストデータを作成するためのシーダーを導入しますdefiデータベースに残っています。

サインアップ ページを持たない管理プロジェクトがある場合はいつでも、何をするつもりですか? つまり、少なくとも 8 人の管理者ユーザーを作成する必要があります。 したがって、基本的に、彼はログインして管理パネル全体にアクセスできます。 しかし、フロント エンドにサインアップ ページがありません。 ログインページしかありません。 データベースから直接管理者を作成できますか? はいの場合は、プロジェクトの新しい構成を作成するときに、常にデータベースから直接新しい管理者ユーザーを作成する必要があります。 ただし、laravel 8シーダーを使用して管理ユーザーを作成できるように、管理シーダーを作成することをお勧めします。 laravel XNUMXでシーダーを実行するコマンドを実行するだけです.

事前設定構成がある場合も同じですdefinite では、設定シーダーを作成し、事前構成を追加できますdefiデータベーステーブルに接続されます。

Laravelのデータベースシーダーとは

Laravel は、シーダー クラスを使用してテスト データをデータベースにシードする簡単な方法を提供します。 Laravel でデータベースをシードして、テスト目的でデータベースに偽のデータを追加できます。

Laravel でのデータベース シーダーの例

まず、次のコマンドでシーダーを作成します。

php artisan make:seeder UserSeeder

コマンドを実行すると、ファイルが作成されます UserSeeder.php フォルダ内に seeds. クラス seed ディレクトリに格納されます 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')
        ]);
    }
}

では、他のシーダーを呼び出す方法を見てみましょう。 call メソッドは、DatabaseSeeder クラス内で追加のシード クラスを実行するために使用されます。 データベースのシードを複数のファイルに分割して、単一のシーダー クラスが大きくなりすぎないようにすることができます。 call メソッドは、実行する必要があるシーダー クラスの配列を受け入れます。

イノベーションニュースレター
イノベーションに関する最も重要なニュースをお見逃しなく。 メールで受け取るにはサインアップしてください。
<?php
  
use Illuminate\Database\Seeder;
   
class DatabaseSeeder extends Seeder
{
    public function run()
    {
         $this->call([
         UserSeeder::class,
         PostSeeder::class,
     ]);
    }
}

を実行するコマンド seeder

php artisan db:seed

シーダーを個別に実行するコマンド

php artisan db:seed –class=UserSeeder

を実行することもできます seeding コマンドを使用したデータベースの migrate:fresh オプションと組み合わせて –seed. このコマンドは、すべてのテーブルを削除し、すべての移行を再実行して、データベースを再構築します。

php artisan migrate:fresh --seed

Ercole Palmeri

あなたも好きかも:

イノベーションニュースレター
イノベーションに関する最も重要なニュースをお見逃しなく。 メールで受け取るにはサインアップしてください。

最近の記事

Veeam は、保護から対応、回復まで、ランサムウェアに対する最も包括的なサポートを備えています

Coveware by Veeam は、サイバー恐喝インシデント対応サービスを引き続き提供します。 Coveware はフォレンジックと修復機能を提供します…

4月23 2024

グリーン革命とデジタル革命: 予知保全が石油・ガス業界をどのように変革するか

予知保全は、プラント管理に対する革新的かつ積極的なアプローチにより、石油・ガス部門に革命をもたらしています。

4月22 2024

英国の反トラスト規制当局がGenAIをめぐりビッグテックに警鐘を鳴らす

英国CMAは人工知能市場におけるビッグテック企業の行動について警告を発した。そこには…

4月18 2024

カーサ グリーン: イタリアの持続可能な未来のためのエネルギー革命

建物のエネルギー効率を高めるために欧州連合が制定した「グリーンハウス」法令は、立法手続きを次のように終了しました。

4月18 2024

あなたの言語でイノベーションを読む

イノベーションニュースレター
イノベーションに関する最も重要なニュースをお見逃しなく。 メールで受け取るにはサインアップしてください。

Seguici