• 创建模型工厂

php artisan make:factory TestFactory
  • 在工厂中编写填充规则

$factory->define(\App\Model\User::class, function (Faker $faker) {
    return [
        'username' => $faker->userName,
        'password' => encrypt('123456'),
        'nickname' => $faker->name,
        'sex'=>array_random(['男','女']),
        'token' => str_random(10),
        'phone'=>$faker->phoneNumber,
        'active'=>$faker->boolean
    ];
});

其中,AppModelUser::class为你想要填充的表对应的模型,这里为自定义的Model目录下的User模型

  • 在seeds下的DatabaseSeeder.php中

    public function run()
    {
//        将要调用的seed以数组的形式传递给$this->call
//         1.$this->call(UsersTableSeeder::class);
        factory(\App\Model\User::class,10)->create();
    }

说明:可以直接在run方法里面写factory,也可以单独创建一个一个Seeder类,在run里面$this->call,数组形式

  • 执行填充seed

php artisan db:seed   //只填充数据,不会重新建表

如果想先重新建表,再进行数据的填充,可以保证id重新从1开始

artisan migrate:refresh --seed
  • 将faker配置为中文

在config/app.php中添加如下代码

//    配置faker为中文
    'faker_locale' => 'zh_CN',
Last modification:July 5th, 2020 at 05:37 pm
哎呀呀,大家随意,随意就好!