列的出厂相同 ID,自动递增,Laravel
Factory same ID for a column, auto-incremental, Laravel
我尝试为列提供该行的 ID, 是自动递增的。现在是随机值。
//来自工厂
return [
//code...
'register_id' => $faker->unique()->numberBetween($min = 1, $max = 100),
//code...
];
//From Seeder
public function run()
{
factory(App\Person::class, 100)->create();
}
我找到了答案,here,并针对我的案例进行了编辑。
$autoIncrement = autoIncrement();
$factory->define(Person::class, function (Faker $faker) use ($autoIncrement) {
$autoIncrement->next();
//code
return [
'register_id' => $autoIncrement->current(),
]
});
function autoIncrement()
{
for ($i = 0; $i < 1000; $i++) {
yield $i;
}
}
我尝试为列提供该行的 ID, 是自动递增的。现在是随机值。
//来自工厂
return [
//code...
'register_id' => $faker->unique()->numberBetween($min = 1, $max = 100),
//code...
];
//From Seeder
public function run()
{
factory(App\Person::class, 100)->create();
}
我找到了答案,here,并针对我的案例进行了编辑。
$autoIncrement = autoIncrement();
$factory->define(Person::class, function (Faker $faker) use ($autoIncrement) {
$autoIncrement->next();
//code
return [
'register_id' => $autoIncrement->current(),
]
});
function autoIncrement()
{
for ($i = 0; $i < 1000; $i++) {
yield $i;
}
}