2012-10-15 243 views
2

我一直在努力尋找Google App Engine上用GPS座標搜索模型的最佳選項。似乎有幾個像樣的選項,如GeoModel(已過時),但新的搜索API似乎是最新的,並提供了很多功能。這當然有可能在1000次搜索後變得昂貴,一旦離開實驗區域。Google App Engine搜索API執行基於位置的搜索

我無法通過文檔並創建一個連貫的完整示例,以便能夠使用Search API按位置進行搜索,並且我想知道是否有人有他們願意共享或創建的示例來幫助製作此示例處理更簡單一點。我瞭解如何創建實際的地理搜索查詢,但我不清楚如何將它與文檔的構建和索引結合在一起。

回答

1

我不知道任何具體顯示地理位置的例子,但過程非常相似。您可以索引包含GeoField的文檔,其中每個文檔都有latitudelongitude。然後,當你建立你的查詢,您可以:

  • 限制的結果通過距離固定點通過使用像distance(my_geo_field, geopoint(41, 65)) < 100
  • 排序查詢由距離點與像distance(my_geo_field, geopoint(55, -20))
  • 排序表達式通過使用FieldExpressiondistance(my_geo_field, geopoint(10, -30))

他們的工作非常像任何其他領域,計算基於兩點之間的距離表達式除了可以使用distance函數的n在查詢和表達式語言中。如果您有任何具體問題,請隨時在此處詢問。

+0

是否能夠在開發服務器上運行地理查詢?他們似乎沒有在那裏工作...... – kevin

+0

@威爾布朗,請問那個查詢表達式中「100」的單位是什麼?它以英里,公里,米爲單位嗎? –