Radius使用django-haystack和Spatial Solr插件搜索多个位置

时间:2011-05-10 12:26:36

标签: django solr django-haystack

我有一个Person模型,现在可以有多个办公室“位置”,每个都有自己的纬度/经度。

在一个人只能添加一个办公室之前,所以我一直在使用我为django-haystack制作的一个分支,它使用JTeam的spatial-solr-plugin进行半径搜索。见https://github.com/sidmitra/django-haystack

class PersonIndex(indexes.SearchIndex):
    lat = indexes.FloatField()
    lng = indexes.FloatField()

sqs.spatial(lat=lat, long=lng, radius=radius, unit=kwargs.get('unit'))

由于办公室数量不受限制,我不能在索引中使用单独的lat / lng字段。

我能想到的一种方法是将“位置”模型编入索引。每个位置都是索引中的单独条目。因此解决了这个问题,但意味着将所有字段从Person索引复制到此位置索引。虽然这在短期内可能是一个不错的解决方案,但从长远来看可能是不整洁的?

想知道是否有办法单独索引位置,然后根据指定半径范围内的地址过滤相关人员?

0 个答案:

没有答案