我正在编写一个带有 Person 模型的 Rails 应用程序,看起来像这样:
create_table "people", :force => true do |t|
t.string "first_name"
t.string "last_name"
t.string "email"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
我有一个两步过程,如下所示:
- 用人名填写人事记录。由于昵称等原因,人名可能有未知重复。例如,“tim smith”和“timothy smith”
- 查询 API 以获取这些人的潜在电子邮件地址匹配项。
完成该处理后,我可以获得如下数据:
记录 1:名字:tim last_name:smith 电子邮件:tim.smith@sampleemail.com
记录 2:名字:蒂莫西姓氏:史密斯电子邮件:tim.smith@sampleemail.com
在rails中模拟那些重复的最好方法是什么?
更新:澄清
在第 2 步之后,我知道如何找出这两条记录是重复的(即同一个人),我的问题是如何在模型中表示?我是否应该添加一个“duplicate_of_person_id”类型字段并将第一条记录的 id 放在第二条记录的该字段中?有没有更好的办法?