检查两个lat long是否足够接近Python

时间:2018-02-12 20:05:52

标签: python flask-sqlalchemy

我在PostgreSQL中有一个表,其中包含某些地方的纬度和经度。我正在使用flask-sqlalchemy来查询postgres数据库。像这样:

query = db.session.query(Places).all  # Place is the Modal class

现在我在数据库中插入值,如下所示:

 user = Places(request.json['key'], request.json['place_name'], 
              request.json['latitude'], request.json['longitude'])

 db.session.add(user)

我的主键是user.key,以避免重复记录。但我也想避免插入那些lat / long足够接近已经存在于数据库中的记录。

例如:db 28.704661, 77.101484中存在以下lat / long现在我不希望db允许插入足够接近此lat / long的值。 所以,当我尝试插入这个28.704420, 77.101167时,它会给我一个错误。 我要做的一件事是检查小数点后的三位小数,不允许输入少于六位小数。但是在本页的答案Accuracy of lat long上给出的是赤道附近的1位变化可以变化长达111公里等等。我认为可以找到更好的方法。

0 个答案:

没有答案