根据列值集将其他列设置为相同类型 - Laravel Faker
Set other columns to same type depending on a column value set - Laravel Faker
我在我的 Laravel 5.5 项目中使用 Faker 来伪造一些数据。
我 运行 进入这个问题,我需要将 faker 中的另外两个列设置为与生成的 "live" 列相同的值。这就是我的意思:
$factory->define(App\File::class, function (Faker $faker) {
return [
'identifier' => uniqid(),
'user_id' => App\User::all()->random()->id,
'title' => $faker->sentence($nbWords = 4),
'overview_short' => $faker->sentence,
'overview' => $faker->text($maxNbChars = 500),
'price' => $faker->randomFloat($nbMaxDecimals = 2, $min = 0, $max = 125),
'live' => rand(0, 1), // So if "live" = 1
'approved' => rand(0, 1), // Then I want "approved" = 1
'finished' => rand(0, 1), // And "finished" = 1
];
})
因此,如果“live”列设置为 0,那么我想要“approved”和“finished" 列设置为 0,或其他方式。而“live”列可以是运行dom,0或1
有没有办法在 Faker 中做到这一点?
// --------------
知道了,
$live = rand(0, 1);
return [
// .......
'live' => $live,
'approved' => $live,
'finished' => $live
];
你应该把要存入的随机变量存入$live
,并根据值
设置'approved'
和'finished'
我在我的 Laravel 5.5 项目中使用 Faker 来伪造一些数据。 我 运行 进入这个问题,我需要将 faker 中的另外两个列设置为与生成的 "live" 列相同的值。这就是我的意思:
$factory->define(App\File::class, function (Faker $faker) {
return [
'identifier' => uniqid(),
'user_id' => App\User::all()->random()->id,
'title' => $faker->sentence($nbWords = 4),
'overview_short' => $faker->sentence,
'overview' => $faker->text($maxNbChars = 500),
'price' => $faker->randomFloat($nbMaxDecimals = 2, $min = 0, $max = 125),
'live' => rand(0, 1), // So if "live" = 1
'approved' => rand(0, 1), // Then I want "approved" = 1
'finished' => rand(0, 1), // And "finished" = 1
];
})
因此,如果“live”列设置为 0,那么我想要“approved”和“finished" 列设置为 0,或其他方式。而“live”列可以是运行dom,0或1
有没有办法在 Faker 中做到这一点?
// --------------
知道了,
$live = rand(0, 1);
return [
// .......
'live' => $live,
'approved' => $live,
'finished' => $live
];
你应该把要存入的随机变量存入$live
,并根据值
'approved'
和'finished'