我已经实现了GAE的Python Search Api,并尝试根据距给定地理位置的距离进行查询。
我的查询字符串是:“ distance(location,geopoint(XXX,YYY))
以下是显示错误的实际数字(生产):
实际距离:343.9m
仍然得到结果的查询距离:325m
实际距离:18,950.3
仍然得到结果的查询距离:13,499m
实际距离:55,979.0
仍然得到结果的查询距离:44,615m
实际距离:559,443.6
仍然得到结果的查询距离:451,167m
实际距离:53.4
仍然得到结果的查询距离:46m
实际距离:35,322.2
仍然得到结果的查询距离:30,808m
实际距离:190.2
仍然得到结果的查询距离:143m
在我的开发服务器上,这些错误不存在。 我能够查询到准确的仪表并获得预期的结果。
是什么原因造成的,以及如何解决它,以便在生产中获得准确的查询结果? 还有其他人遇到同样的问题吗?
可能有两个原因:
1-英里代替km
2-转换数字(例如35,322.2是35322.2?km?英里?)我建议检查执行距离功能时要处理的数字到底是什么,您可以以编程方式将此数据输出到一些日志中
希望能帮助到你