【问题标题】:Google App Engine Search API Performing Location Based SearchesGoogle App Engine Search API 执行基于位置的搜索
【发布时间】:2023-03-19 09:13:02
【问题描述】:

我一直在尝试在 Google App Engine 上找到通过 GPS 坐标搜索模型的最佳选项。那里似乎有一些不错的选择,例如 GeoModel(已过时),但新的 Search API 似乎是最新的并且提供了很多功能。这当然是因为一旦离开实验区,它可能会在 1000 次搜索后变得昂贵。

我在浏览文档和创建连贯的完整示例以便能够使用 Search API 按位置搜索时遇到问题,我想知道是否有人愿意分享或创建示例以帮助完成此过程更简单一点。我了解如何创建实际的地理搜索查询,但我不清楚如何将其与文档的构造和索引结合在一起。

【问题讨论】:

    标签: python google-app-engine geolocation geocoding gae-search


    【解决方案1】:

    我不知道任何具体显示地理的示例,但过程非常相似。您可以索引包含GeoFields 的文档,每个文档都有一个latitude 和一个longitude。然后,当您构建查询时,您可以:

    • 使用distance(my_geo_field, geopoint(41, 65)) < 100 之类的查询,根据距固定点的距离限制结果
    • 使用像distance(my_geo_field, geopoint(55, -20))这样的排序表达式按距点的距离排序
    • 使用FieldExpression(如distance(my_geo_field, geopoint(10, -30)))根据点之间的距离计算表达式

    除了您可以在查询和表达式语言中使用distance 函数之外,它们的工作方式与任何其他字段非常相似。如果您有任何具体问题,请随时在此处提问。

    【讨论】:

    • 您能否在开发服务器上进行地理查询?他们似乎没有在那里工作......
    • @Will Brown,请问那个查询表达式中“100”的单位是什么?是英里、公里还是米?
    猜你喜欢
    • 2015-04-01
    • 2014-06-25
    • 2014-07-14
    • 1970-01-01
    • 1970-01-01
    • 2017-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多