【问题标题】:How to override geocoders compass points?如何覆盖地理编码器指南针点?
【发布时间】:2018-06-16 08:36:24
【问题描述】:

我正在使用 rails 地理编码器 gem。我想覆盖

COMPASS_POINTS = %w[N NE E SE S SW W NW]

带有德国罗盘点:

COMPASS_POINTS = %w[N NO O SO S SW W NW]

但我不知道如何以及在哪里 (config/gecoder.rb?) 执行此操作?

任何帮助将不胜感激!

【问题讨论】:

  • 创建config/initializers/geocoder_override.rb 并在其中添加Geocoder::Calculations.COMPASS_POINTS = %w[N NO O SO S SW W NW]

标签: ruby-on-rails ruby rubygems geocoder


【解决方案1】:

根据documentation

 ##
    # Compass point names, listed clockwise starting at North.
    #
    # If you want bearings named using more, fewer, or different points
    # override Geocoder::Calculations.COMPASS_POINTS with your own array.
    #
    COMPASS_POINTS = %w[N NE E SE S SW W NW]

所以,创建一个初始化器 config/initializers/geocoder_override.rb 并添加以下行:

Geocoder::Calculations::COMPASS_POINTS = %w[N NO O SO S SW W NW]

【讨论】:

  • 当我这样做并重新启动我的应用程序时,我得到: config/initializers/geocoder_override.rb:1:in <top (required)>': undefined method COMPASS_POINTS=' for Geocoder::Calculations:Module (NoMethodError) 你的意思是?罗盘点
  • 尝试更改为 Geocoder::Calculations::COMPASS_POINTS = %w[N NO O SO S SW W NW]
  • 太好了,很有效,非常感谢!您能否在上面编辑您的答案,以便我将其标记为答案?
  • 更新了答案。
猜你喜欢
  • 2011-02-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多