如何避免或确保表中的条目是唯一的,同时播种laravel表

nbysray5  于 12个月前  发布在  其他
关注(0)|答案(2)|浏览(99)

我正在使用laravel 10构建一个潜在客户管理系统,我有几个表,如铅,individualLead,BusinessLead,状态,来源,等状态表可以有像取消,待定,后续开始,完成等值。在播种数据库时,相同的值作为多个条目被馈送到表中,如何确保在播种数据库时表只具有唯一和相关的数据。我也在为这些ta [ enter image description here ](https://i.stack.imgur.com/Wjh5R.png)](https://i.stack.imgur.com/IgA37.png)](https://i.stack.imgur.com/LLUYQ.png)bles构建API
我尝试添加unique()约束,并在播种表时进行循环

envsm3lx

envsm3lx1#

1.使用faker生成唯一值:
'contact_no' => $this->faker->unique()->phoneNumber,
'email' => $this->faker->unique()->safeEmail,
1.在迁移表中:

$table->unique(['email']);
 $table->unique(['phoneNumber']);
slwdgvem

slwdgvem2#

如果你是第一次跑播种机。它将创造。在没有db:fresh的情况下再次运行时,将更新记录。
你可以在updateOrCreate函数的第一个参数中添加所有唯一的复合键

\App\User::updateOrCreate(['user_email','phone'],$data);

在迁移时对表列进行索引将不允许创建重复记录。

相关问题