ruby-on-rails - 使用自定义地址格式的 Rails geocoder gem 地理编码
问题描述
我正在使用地理编码器从地址获取纬度和经度
在我添加的模型中
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, city, state, country].compact.join(', ')
有没有办法可以专门提供邮政编码等或如何处理上述地址?
解决方案
假设您遵循 Geocoder 文档并将longitude
andlatitude
属性添加到您的模型中,我尝试了您的代码,您只需在所需的任何回调中添加after_validation :geocode
或使用该方法:geocode
。
编辑:
好的,所以我认为您的问题更新时我没有刷新页面,但是我尝试了完全相同的代码并且它按预期工作。
推荐阅读
- c# - 正则表达式检查时间段值 1W,5Y
- c++ - 在数据帧上应用 Rcpp
- clojurescript - 试剂组件不会在道具更改时重新渲染
- python - PyCharm 对跨平台开发的检查
- tensorflow - 有没有办法访问 tensorflow_hub.KerasLayer 对象中的图层?
- python - 在Python中的一句话中获取列表中列表中str中的第一个字符
- php - 与缓存一起使用的 PHP 会话的替代方案是什么?
- java - 我想显示在搜索栏中播放的音乐的进度
- android - 为什么在将代码交换到另一个项目后我无法从本地存储中读取
- c# - Windows 服务未打开应用程序 GUI