最佳答案
database/factories/UserFactory.php
<?php
use Faker\Generator as Faker;
/*
|--------------------------------------------------------------------------
| Model Factories
|--------------------------------------------------------------------------
|
| This directory should contain each of the model factory definitions for
| your application. Factories provide a convenient way to generate new
| model instances for testing / seeding your application's database.
|
*/
$factory->define(App\Models\User::class, function (Faker $faker) {
$date_time = $faker->date . ' ' . $faker->time;
static $password;
return [
'name' => $faker->name,
'email' => $faker->safeEmail,
'is_admin' => false,
'activated' => true,
'password' => $password ?: $password = bcrypt('secret'),// secret 这个就是密码
'remember_token' => str_random(10),
'created_at' => $date_time,
'updated_at' => $date_time,
];
});
我可以这个样子来理解这个数据填充
Factory.php 文件的作用就是一个一个工厂(生产不同的产品),里面是定义这个工厂生成的是什么产品,产品有什么属性,这里的产品都是模型
Seeder.php 文件的作用就是实际的生产了,让工厂去生产产品,要生产多少个,有没有什么特殊要求啊
讨论数量:
database/factories/UserFactory.php
<?php
use Faker\Generator as Faker;
/*
|--------------------------------------------------------------------------
| Model Factories
|--------------------------------------------------------------------------
|
| This directory should contain each of the model factory definitions for
| your application. Factories provide a convenient way to generate new
| model instances for testing / seeding your application's database.
|
*/
$factory->define(App\Models\User::class, function (Faker $faker) {
$date_time = $faker->date . ' ' . $faker->time;
static $password;
return [
'name' => $faker->name,
'email' => $faker->safeEmail,
'is_admin' => false,
'activated' => true,
'password' => $password ?: $password = bcrypt('secret'),// secret 这个就是密码
'remember_token' => str_random(10),
'created_at' => $date_time,
'updated_at' => $date_time,
];
});
我可以这个样子来理解这个数据填充
Factory.php 文件的作用就是一个一个工厂(生产不同的产品),里面是定义这个工厂生成的是什么产品,产品有什么属性,这里的产品都是模型
Seeder.php 文件的作用就是实际的生产了,让工厂去生产产品,要生产多少个,有没有什么特殊要求啊
@followyounger 在database/factories/UserFactory.php中,
'password' => $password ?: $password = bcrypt('secret'),生成的假用户的密码就是这块填的 secret.
在database/seeds/UsersTableSeeder.php中,1号用户的密码也是bcyprt( )里填的值,比如我填的bcrypt('111111')
推荐文章: