我正在使用地址解析器从地址获取纬度和经度
在我添加的模型中
class Clinic < ApplicationRecord
geocoded_by :full_street_address
after_validation :geocode
def full_street_address
[address_line1, city, state, country].compact.join(', ')
end
end
并且客户已向我提供了这样的地址
{
"name": "Bahrain Defence Force Royal Medical Services Hospital - Riffa",
"address_line1": "West Riffa P O Box 28743",
"country": "Bahrain",
"state": "Al-Wusta",
"city": "Riffa"
}
现在,当我创建诊所时,它不会返回纬度和经度,
似乎问题出在地址而不是下一行
[address_line1,城市,州,国家/地区] .compact.join(',')
有没有一种方法可以专门提供邮政编码等,或者如何处理上述地址?
答案 0 :(得分:0)
假设您遵循了Geocoder文档并向模型中添加了longitude
和latitude
属性,我尝试了您的代码,您只需要添加after_validation :geocode
或使用方法{{ 1}}中的任何回调。
编辑:
好的,我想在您的问题更新时我没有刷新页面,但是我尝试了完全相同的代码,并且按预期工作。