人有很多地址。如果来自API的JSON响应与数据库中的任何地址不同,我试图为某人创建地址。
我写了以下内容,它适用于文字用例;它可以防止重复的地址:
p = Person.find(1)
unless p.addresses.any? { |i| i.address_1.eql?(@response['addresses'][0]['street'].upcase) }
这可以通过获取数组,映射地址对象,并在eql?
列(街道地址)上调用address_
来实现。
但是,如果街道地址后缀为"blvd"
或"ln"
,我想将该地址添加到此人。我还没有找到一个方法来评估两个字符串的相似之处。是否有一些像similar_to?
这样的方法可以帮助我?