【问题标题】:Rails - stack level too deep for geocoding methodRails - 堆栈级别对于地理编码方法来说太深了
【发布时间】:2017-07-20 21:58:55
【问题描述】:

我正在尝试在我的应用程序中实现地理编码功能,但在我想要地理编码的模型中的以下方法出现“堆栈级别太深”错误:

来自 gem README: 如果您的模型具有街道、城市、州和国家/地区属性,您可以执行以下操作:

geocoded_by :address

def address
  [street, city, state, country].compact.join(', ')
end

我为我的模型做了同样的事情,没有州和国家,因为我的模型有“街道”和“城市”属性。

为什么我会为这个方法得到这个无限循环(我猜这就是原因)?


宝石是:https://github.com/alexreisner/geocoder

你可以看到他们有我上面列出的相同示例。

【问题讨论】:

  • gem 的名称是什么,您能否提供文档链接?
  • 请发布堆栈跟踪
  • 这里没有任何东西会导致递归循环。你能发布更多你的模型吗?
  • 1.发布堆栈跟踪 2. 在您的模型中是否有另一种称为“地址”的方法或属性? 3. 你是如何调用地理编码器的?

标签: ruby-on-rails


【解决方案1】:

你可以试试

def address
    "#{street}, #{city}, #{state}, #{country}"
end

【讨论】:

    猜你喜欢
    • 2012-07-24
    • 1970-01-01
    • 2017-08-19
    • 2018-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    • 2021-01-01
    相关资源
    最近更新 更多