【发布时间】:2020-09-12 00:05:56
【问题描述】:
我的数据库中有保险公司“字典”,比如说:
+----+-------------------+----------+
| ID | Name | Data |
+----+-------------------+----------+
| 1 | InsuranceCompany1 | SomeData |
+----+-------------------+----------+
但是我从另一个系统获取数据,结果我得到了保险公司的副本,但没有我的数据:
+----+-------------------+----------+
| ID | Name | Data |
+----+-------------------+----------+
| 1 | InsuranceCompany1 | SomeData |
+----+-------------------+----------+
| 2 | InsuranceCompany1 | |
+----+-------------------+----------+
两条记录在各种模型中相关,但它们引用相同的数据,我想要的是配对这些记录而不更改其他表中的查询或数据,所以没人知道有两条记录,但都引用一个实例是
+----+-------------------+----------+
| 1 | InsuranceCompany1 | SomeData |
+----+-------------------+----------+
我的问题是:是否有一些适当的方法来处理这种情况? 我想出了解决方案,即添加 parent_id 列,并在重复的行中手动设置 parent_id,然后在模型中覆盖 Eloquent 方法,如 find 如果设置了 parent_id,则返回 parent。
复制 SomeData 列不是一个选项,因为insurance_company_id == id; 可能存在条件
【问题讨论】:
标签: mysql laravel eloquent duplicates