2

データベース テーブルをすばやくシードする必要があります。ピボット テーブルを含み、password_resets と migrations を除く 23 個のテーブルがあります。それらのほとんどは関係に参加しています。

シードするテーブルが 23 個あるため、シーダー クラスを作成するのは簡単ではありません。外部キーを考慮して、データ型と長さに基づいてテーブルをシードするために使用できるものはありますか? 現時点では、データが意味をなさないかどうかは問題ではありません。たとえば、名前は「lasdkjflk alfsd」で埋めることができます。ただし、テーブルがそのように設計されている場合は、20 文字未満の文字列にする必要があります。

4

1 に答える 1

1

偽のデータを提供するモデル ファクトリを使用してみてください。 Laravel 5.2 Model Factoryを参照してください。

Faker シードもご覧ください。

class PostsTableSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
      $faker = Faker::create();
      foreach (range(1,5) as $index) {
        DB::table('posts')->insert([
            'title' => $faker->catchPhrase,
            'content' => $faker->paragraph,
            'created_at' => $faker->dateTime($max = 'now'),
            'updated_at' => $faker->dateTime($max = 'now'),
        ]);
      }
    }
}

お役に立てれば。

于 2016-08-07T15:00:12.837 に答える