1

私は、それぞれが独自の緯度/経度を持つ多数のオフィス「場所」を持つことができる Person モデルを持っています。

オフィスを 1 つだけ追加できるようになる前は、JTeam の spatial-solr-plugin を使用して半径検索を行う django-haystack 用に作成したフォークを使用していました。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'))

オフィスの数は無制限であるため、インデックスで個別の緯度/経度フィールドを使用することはできません。

私が考えることができる1つの方法は、代わりに「場所」モデルにインデックスを付けることでした。各場所は、インデックス内の個別のエントリになります。したがって、この問題は解決されますが、Person インデックスからこの場所インデックスにすべてのフィールドを複製することになります。これは短期的にはまともな解決策かもしれませんが、長期的にはおそらく厄介でしょうか?

指定された半径内にある住所に基づいて、場所を個別にインデックス化し、関連する人物をフィルタリングする方法があるかどうか疑問に思っていますか?

4

0 に答える 0