我有一个使用地理编码器在用户附近查找供应商的应用程序。我目前在另一个模型中使用 ElasticSearch,但我想将其扩展到我的 Vendor 模型。唯一的事情是,我不希望用户搜索所有供应商,只搜索距离他们 x 以内的供应商。这样的事情可能吗?我浏览了一些弹性搜索文档,但还没有找到任何东西。这是我的供应商模型和我的设计用户模型:
class Vendor < ActiveRecord::Base
geocoded_by :address
after_validation :geocode,
:if => lambda{ |obj| obj.address_changed? }
end
class User < ActiveRecord::Base
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
validates :zip, presence: true
geocoded_by :zip
after_validation :geocode
end
对此有什么想法吗?对任何建议持开放态度,因为我不确定如何做到这一点。提前致谢!