ホームページ  >  記事  >  PHPフレームワーク  >  Laravelでデータ充填を素早く実装する方法(シーダーを使用)

Laravelでデータ充填を素早く実装する方法(シーダーを使用)

藏色散人
藏色散人転載
2021-11-03 15:55:493494ブラウズ

Laravel の次のチュートリアルコラムでは、laravel がシーダーを使用してデータテーブルにデータを埋める方法を紹介します。

#laravel はシーダーを使用してデータ テーブルにデータを入力します

#データ テーブルにデータをすばやく入力する方法を紹介します

まずはじめに php 職人コマンドを実行すると、様々なコマンドの指示が表示されますので、

#

php artisan make:seeder
を見つけて、コマンドの指示に従い、以下のように対応するファイルを作成します

php artisan make:seeder TestSeeder

まず、以下に示すようにテスト テーブルを作成します

##の内容TestSeeder.php ファイルは次のとおりです

<?php

use Illuminate\Database\Seeder;

class TestSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        DB::table(&#39;test&#39;)->insert([
            &#39;name&#39; => str_random(10),
            &#39;sex&#39; => rand(1,2), // 1男 2女
            &#39;email&#39; => str_random(10).&#39;@qq.com&#39;,
            &#39;password&#39; => bcrypt(&#39;123456&#39;), // bcrypt为hash加密
        ]);
    }
}

#次のコマンドを実行して偽のデータを入力します##

php artisan db:seed --class=TestSeeder

#コマンドを追加するたびに片方を実行するのは非常に面倒なので、新たに

for ($x=0; $x<=10; $x++) {
     DB::table(&#39;test&#39;)->insert([
          &#39;name&#39; => str_random(10),
          &#39;sex&#39; => rand(1,2), // 1男 2女
          &#39;email&#39; => str_random(10).&#39;@qq.com&#39;,
          &#39;password&#39; => bcrypt(&#39;123456&#39;), // bcrypt为hash加密
     ]);
}

を挿入するforループを書いたほうが良いでしょう。データベースは次のように表示されます。

複数のテーブルのテスト データを同時に追加する必要がある場合は、DatabaseSeeder.php を追加する必要があります。 :

<?php

use Illuminate\Database\Seeder;

class DatabaseSeeder extends Seeder
{
    public function run()
    {
        // $this->call(UsersTableSeeder::class);
         $this->call(CreateDepartmentsSeeder::class);
         $this->call(CreateUsersSeeder::class);
         $this->call(CreateWagesSeeder::class);
    }
}

次のコマンドを実行して、複数のテーブルのテスト データを入力します

php artisan db:seed
rrree公式ドキュメントのアドレス: https://laravel.com/docs /5.5/seeding#writing-seeders

以上がLaravelでデータ充填を素早く実装する方法(シーダーを使用)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。