我不知道要采取什么策略,但我想在 Rails 中创建一个用户注册表单,只允许您在某个地理区域内进行注册。例如,Cassat 以东的 32205 或 8th 以南的 32206。
有谁知道这样的好方法?
包含所有已知有效地址的 yaml 文件?您可以使用 google maps api 做些什么吗?
我不知道要采取什么策略,但我想在 Rails 中创建一个用户注册表单,只允许您在某个地理区域内进行注册。例如,Cassat 以东的 32205 或 8th 以南的 32206。
有谁知道这样的好方法?
包含所有已知有效地址的 yaml 文件?您可以使用 google maps api 做些什么吗?
Geocoder gem 可以帮助您解决这个问题...如果您对用户输入的地址进行地理编码,则可以进行另一个验证,如下所示:
validates :is_in_valid_area?
def is_in_valid_area?
return unless geocoded?
distance_from([40.714,-100.234]) < 30
end
您可能需要定义地理编码?自己检查坐标是否存在。
http://www.rubygeocoder.com https://github.com/alexreisner/geocoder