Laravel:完整性约束违规:1062重复条目'jon@doe.com'键'users_email_unique'
Posted
技术标签:
【中文标题】Laravel:完整性约束违规:1062重复条目\'jon@doe.com\'键\'users_email_unique\'【英文标题】:Laravel: Integrity constraint violation: 1062 Duplicate entry 'jon@doe.com' for key 'users_email_unique'Laravel:完整性约束违规:1062重复条目'jon@doe.com'键'users_email_unique' 【发布时间】:2015-06-18 16:39:38 【问题描述】:我在将实际数据播种到我的数据库时遇到了一些问题。我收到错误消息:
"Integrity constraint violation: 1062 Duplicate entry 'jon@doe.de' for key 'users_email_unique'"
这是我工厂的样子:
$factory('App\User', [
'name' => 'Jon Doe',
'email' => 'jon@doe.com',
'password' => password_hash('123456', PASSWORD_DEFAULT),
]);
$factory('App\User', [
'name' => 'Jane Doe',
'email' => 'jane@doe.com',
'password' => password_hash('123456', PASSWORD_DEFAph ULT),
]);
我什至不运行 UserTableSeeder,但它似乎再次触发了 jon@doe.com。
有什么线索吗?
这是我的 DatabaseSeeder:
<?php
use Illuminate\Database\Seeder;
use Illuminate\Database\Eloquent\Model;
class DatabaseSeeder extends Seeder
/**
* Run the database seeds.
*
* @return void
*/
public function run()
Model::unguard();
// $this->call('UserTableSeeder');
$this->call('ClientTableSeeder');
$this->call('OrderTableSeeder');
$this->call('FileTableSeeder');
这是我的 UserTableSeeder,上面注释掉了
<?php
use Illuminate\Database\Seeder;
// composer require laracasts/testdummy
use Laracasts\TestDummy\Factory as TestDummy;
class UserTableSeeder extends Seeder
public function run()
TestDummy::times(1)->create('App\User');
请指教。
【问题讨论】:
你的代码看起来有点不对劲。给定的代码有 doe.com,而错误是关于 doe.de。 【参考方案1】:解决方案很明显,只需使用 faker 在您的工厂中生成您的虚拟数据
$factory('App\User', [
'name' => $faker->name,
'email' => $faker->email,
'password' => password_hash('123456', PASSWORD_DEFAULT),
]);
因为您有重复的电子邮件地址,并且您在迁移中设置了唯一规则
如果您想覆盖虚拟数据,您可以这样做
$overwrite = ['name' => 'Jon Doe','email' =>'jondoe.email.com'];
TestDummy::times(1)->create('App\User',$overwrite);
【讨论】:
感谢评论,但这对我没有帮助,因为我得到的错误是由于“重复”的电子邮件地址。我的迁移要求电子邮件应该是唯一的。尽管如此,这也不能解决问题,因为我最初的问题是,对于每个创建的订单,都会创建一个新用户,这很奇怪......无论如何都要感谢您的回复。以上是关于Laravel:完整性约束违规:1062重复条目'jon@doe.com'键'users_email_unique'的主要内容,如果未能解决你的问题,请参考以下文章
如何修复完整性约束违规:1062 键“PRIMARY:Laravel Pivot Table”的重复条目“1-1”
SQLSTATE [23000]:完整性约束违规:1062 键 'tbl_item_item_ID_UNIQUE' 的重复条目 '25'
SQLSTATE [23000]:完整性约束违规:1062 键“users_melli_unique”的重复条目“0430142821”