【发布时间】:2019-07-24 04:46:10
【问题描述】:
我想用假数据填充我的数据库,但是当我运行种子命令时,它不断给我数组到字符串的转换异常我知道它是因为某些功能但我无法检测到哪一个? 我尝试使用 $faker->word 属性而不是名称,但同样的问题
$factory->define(User::class, function (Faker $faker) {
return [
'name' => $faker->name,
'email' => $faker->unique()->safeEmail,
'verified' => $verified = $faker->randomElements([User::VERIFIED_USER, User::UNVERIFIED_USER]),
'verification_token' => $verified == User::VERIFIED_USER ? null : User::generateVerficationCode(),
'admin' => $faker->randomElements([User::REGULAR_USER, User::ADMIN_USER]),
'email_verified_at' => now(),
'password' =>
'$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi',
'remember_token' => Str::random(1, 10),
];
});
$factory->define(Category::class, function(Faker $faker){
return [
'name' => $faker->name,
'description' => $faker->paragraph,
];
});
这是我的 Database Seeder 类函数
public function run()
{
DB::statement('set FOREIGN_KEY_CHECKS = 0');
User::truncate();
Category::truncate();
Product::truncate();
Transaction::truncate();
DB::table('category_product')->truncate();
$userQuantity = 200;
$categoriesQuantity = 50;
$productsQuantity = 1000;
$transactionQuantity = 1000;
factory(User::class, $userQuantity)->create();
factory(Category::class, $categoriesQuantity)->create();
factory(Product::class, $productsQuantity)->create()->each(function($product) {
$categories = Category::all()->random(mt_rand(1, 5))->pluck('id')->all();
$product->categories()->attach($categories);
});
factory(Transaction::class, $transactionQuantity)->create();
}
【问题讨论】: