Ruby on rails 使用geo_多边形过滤器在轮胎/弹性体搜索中获取位于用户定义多边形内的所有属性
我正在从事一个使用ElasticSearch和tire的项目。我的网页上有一个google地图。我想在用户在地图上绘制apolygon时获得所有属性,这些属性必须通过ElasticSearch和tire获取。我已经得到了多边形坐标,现在我想在(tire.serach块,见下文)中编写一个查询,该查询将过滤多边形区域内的所有属性。我的数据库的属性表有经度和纬度列。我可以使用Postgis适配器来实现这一点,但我需要知道在tire/Elastic搜索中实现这一点的查询语法Ruby on rails 使用geo_多边形过滤器在轮胎/弹性体搜索中获取位于用户定义多边形内的所有属性,ruby-on-rails,ruby,elasticsearch,tire,Ruby On Rails,Ruby,elasticsearch,Tire,我正在从事一个使用ElasticSearch和tire的项目。我的网页上有一个google地图。我想在用户在地图上绘制apolygon时获得所有属性,这些属性必须通过ElasticSearch和tire获取。我已经得到了多边形坐标,现在我想在(tire.serach块,见下文)中编写一个查询,该查询将过滤多边形区域内的所有属性。我的数据库的属性表有经度和纬度列。我可以使用Postgis适配器来实现这一点,但我需要知道在tire/Elastic搜索中实现这一点的查询语法 def self.sear
def self.search(params={})
tire.search(load: true, page: params[:page], per_page: 50) do |search|
syntax of the filter query that will fetch all properties within user defined polygon area..???
end
end
谢谢
Ateq.类似于:
Tire.search 'venues' do
query do
filtered do
query { all }
filter :geo_polygon, location: { points: [
{lat: 40, lon -70},
{lat: 30, lon -80},
{lat: 20, lon -90}
]
}
end
end
end
示例改编自上的Elasticsearch文档