laravel的factory自动填充数据

作者: liluchang 分类: laravel 发布时间: 2019-03-14 23:39

我们有时候会需要使用一些测试数据,如此我们就可以使用laravel的factory来填充一些数据。

那么,factory创建后的文件地址在database/factories文件夹内

然后其中就可以使用一些随机的数据创建,示例代码为

$factory->define(App\Step::class, function (Faker $faker) {
    return [
        'name'=>$faker->sentence(),
        'completion'=>$faker->boolean(),
        'task_id'=>Task::all()->random()->id,
    ];
});

首选,我们需要创建一个填充数据的seeder,在命令行创建

artisan make:seeder StepsTableSeeder //命名用自己容易理解的方式

创建后地址位于database/seeds,这个里面主要是用来指定随机数据每次创建多少条。

public function run()
    {
        DB::table('steps')->truncate(); //清空表,这个是自己发挥,
        factory(App\Step::class,20)->create();
    }

然后在这个文件夹的DatabaseSeeder.php文件中call一下我们创建数据的那个seeder就好,示例代码为

public function run()
{
     $this->call(StepsTableSeeder::class);
}

然后去命令行执行artisan db:seed,随机数据创建成功

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

标签云