填充规则:
https://packagist.org/packages/fzaninotto/faker?
编写模型工厂:
<?php
use Faker\Generator as Faker;
use App\Model\Admin\Manager;
$factory->define(Manager::class, function (Faker $faker) {
return [
'username' => $faker->name,
'password' => bcrypt('123456'),
'gender' => rand(1,3),
'mobile' => $faker->phoneNumber,
'email' => $faker->email,
'role_id' => rand(1,6),
'status' => rand(1,2)
];
});
编写填充文件:
<?php
use App\Model\Admin\Manager;
use Illuminate\Database\Seeder;
class ManagerTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
factory(Manager::class, 10)->create(); //make是生成数据,create是生成数据并保存到数据库
}
}
填充数据本地化(生成中文数据):
public function boot()
{
$this->app->singleton(\Faker\Generator::class, function () {
return \Faker\Factory::create('zh_CN');
});
}
执行填充:
php artisan db:seed --class=ManagerTableSeeder
填充结果: