不能在 property_web_builder 引擎中使用 geokit 或 Geocoder

cannot use geokit or Geocoder inside property_web_builder engine

我正在自定义 property_web_builder 引擎以使用 Geokit 或 Geocoder gem 获取附近的结果,但无法使用其中任何一个。 使用 'Geocoder' gem 获取未定义的方法 'gecoded_by' 和 'geokit-rails' gem.

的未定义方法 'acts_as_mappable'

这是我正在做的 - 对于geokit-rails

module Pwb
  class Prop < ApplicationRecord
    translates :title, :description
    globalize_accessors locales: I18n.available_locales
    attribute :title
    attribute :description
    acts_as_mappable :default_units => :miles,
    :lat_column_name => :latitude,
    :lng_column_name => :longitude

对于地理编码器

module Pwb
  class Prop < ApplicationRecord
    translates :title, :description
    globalize_accessors locales: I18n.available_locales
    attribute :title
    attribute :description
    geocoded_by :complete_address
    after_validation :geocode

当我按照自述文件中的描述在项目上添加引擎后,尝试在 rails 控制台中查找结果。我得到了这些结果。

p = Pwb::Prop.first NoMethodError: undefined method `acts_as_mappable' for #Class:0x007f04ecda5118 from (irb):1

地理编码器类似

p = Pwb::Prop.first NoMethodError: undefined method `geocoded_by' for #Class:0x007f04ecda5118 from (irb):1

将 gem 添加到应用程序 gem 文件而不是 pwb 引擎的 gem 文件并且它起作用了。

这里是 property_web_builder 的创建者。很高兴你找到了答案。如果类似的事情再次发生,您可以随时在 github 存储库上创建问题。