有没有办法在运行laravel
我当前的laravel种子文件如下:
seed
时仅在记录不存在的情况下插入记录?我当前的laravel种子文件如下:
DB::table('users')->insert([
//Global Admin
[
'member_id' => 11111111,
'firstname' => 'Joe',
'lastname' => 'Bloggs'
],
[
'member_id' => 22222222,
'firstname' => 'Jim',
'lastname' => 'Bloggs'
],
]);
非常标准!
我需要将每个插入语句都包裹在try catch块中吗?就像这样:
try {
DB::table('users')->insert(['member_id' => 11111111, 'firstname' => 'Joe', 'lastname' => 'Bloggs']);
} catch(Exception $e){
//Die silently
}
try {
DB::table('users')->insert(['member_id' => 22222222, 'firstname' => 'Jim', 'lastname' => 'Bloggs']);
} catch(Exception $e){
//Die silently
}
以后我可能想在同一个种子中添加额外的行,而不必编写新的种子,并重新运行php artisan db:seed
仅添加我的新行。
这是否可行?
php artisan db:seed
,因为它会抛出默认数据已存在的错误! - S_Rphp artisan db:seed --class=UsersTableSeeder
来运行该种子文件。请注意,您需要保持原文的意思,但需要使翻译更加通俗易懂,不包含任何额外的解释或信息。 - stokoe0990