Laravel 播种器是否覆盖整个 table
Does Laravel seeder overwrite the entire table
Laravel 播种器会覆盖整个 table 还是可以将其添加到 table 而无需修改现有内容?
默认情况下,Laravel 播种器不会覆盖 table,它只会追加。如果您想在播种之前 truncate
table,您可以编写功能。
Seeder 通常只是添加一些数据。它只是一个简单的 class,它做这样的事情:
// Insert one row of random data into the 'users' table
DB::table('users')->insert([
'name' => str_random(10),
'email' => str_random(10).'@gmail.com',
'password' => bcrypt('secret'),
]);
所以不,如果您不告诉它这样做,它不会覆盖任何内容。
要创建种子迁移,请使用以下 laravel 包
https://github.com/slampenny/SmartSeeder
它创建版本化播种,并且只会播种未迁移的新文件,就像默认的 table 迁移
Laravel 播种器会覆盖整个 table 还是可以将其添加到 table 而无需修改现有内容?
Laravel 播种器不会覆盖 table,它只会追加。如果您想在播种之前 truncate
table,您可以编写功能。
Seeder 通常只是添加一些数据。它只是一个简单的 class,它做这样的事情:
// Insert one row of random data into the 'users' table
DB::table('users')->insert([
'name' => str_random(10),
'email' => str_random(10).'@gmail.com',
'password' => bcrypt('secret'),
]);
所以不,如果您不告诉它这样做,它不会覆盖任何内容。
要创建种子迁移,请使用以下 laravel 包 https://github.com/slampenny/SmartSeeder
它创建版本化播种,并且只会播种未迁移的新文件,就像默认的 table 迁移