Algolia rails gem 多个地理位置

Algolia rails gem multiple geolocations

possible to use multiple locations for an object. How can you do this using the rails gem?

我试过了

 geoloc :lat, :lon
 geoloc :lat2, :lon2

但只保存了一个位置

我也试过了

geoloc do
  _geoloc
end

def _geoloc
 [latitude, longitude, 64.2008, 149.4937]
end

但是 geoloc fx 需要 2 个参数 geoloc: wrong number of arguments (0 for 2) (ArgumentError)

看起来 Rails gem geoloc 助手现在不支持多个条目。您可以通过直接注册名为 _geoloc 的属性并将其实现为可以 return 多个位置的辅助方法来解决它:

algoliasearch do

  attributes :_geoloc

  def _geoloc
    [{ "lat": 47.279430, "lng": 5.106450 },
     { "lat": 47.293228, "lng": 5.004570 },
     { "lat": 47.316669, "lng": 5.016670 }]
  end

end

如果您尝试这样做,请确保删除原始 geoloc 调用,这样它就不会覆盖您手动设置的数据。