首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django Haystack w/ Elasticsearch Dwithin错误的投影或单位?

Django Haystack w/ Elasticsearch Dwithin错误的投影或单位?
EN

Stack Overflow用户
提问于 2014-10-26 22:42:00
回答 1查看 274关注 0票数 1

我正在尝试将地理定位添加到我的搜索API中。在API中,您可以根据搜索项和当前位置搜索业务。我正在使用django干草堆进行索引和查询,除了一个奇怪的问题外,一切都在工作。

当我搜索半径为5英里(D(mi=5)),我没有看到任何结果,即使有明显的结果在5英里半径内输入的位置。但是,当我进入100英里(D(mi=100))时,我确实看到了结果,这是在1英里内输入的位置。

问题:是否可能距离类(D)使用与WGS-84不同的投影?

下面是我的iPython shell会话:

代码语言:javascript
复制
In [5]: from haystack.utils.geo import D

In [6]: from haystack.query import SearchQuerySet

In [7]: dist = D(mi=5)

In [8]: point = Point(-122.256013, 37.864203)

In [9]: SearchQuerySet().dwithin('location', point, dist)
Out[9]: []

In [10]: dist2 = D(mi=100)

In [11]: sqs = SearchQuerySet().dwithin('location', point, dist).distance('location', point2)

In [12]: sqs
Out[12]: [<SearchResult: api.business (pk=u'3232')>, <SearchResult: api.business (pk=u'3238')>]

In [13]: sqs[0].distance
Out[13]: Distance(km=0.140045623232) << This is correct

版本

Python库

  • Django: 1.7
  • 弹性搜索: 1.2.0
  • 重力场: 1.3.0
  • django-干草堆: 2.3.1

外部属地

  • GDAL: 1.11.0
  • 全球环境展望: 3.4.2
EN

回答 1

Stack Overflow用户

发布于 2015-08-11 00:31:45

我也有同样的错误,我修复了它将django-haystack升级到2.4

Elasticsearch以米的形式处理公里(参见:第957期pr-1003)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26578808

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档