gpt4 book ai didi

python - GIS、PointField 和 Geography=True 距离计算的要求,包括数据库问题

转载 作者:太空宇宙 更新时间:2023-11-03 21:20:13 25 4
gpt4 key购买 nike

引用 Django:插件、包或内置函数。

我需要安装其他插件才能使用 gis 函数“PointField”和 dwithin 的距离计算查询吗?现在的错误要么与init中缺少PointField有关,要么与要求GDAL有关(我正在使用GeoIP2 w/maxmind db?不确定这些是否相似或可以一起工作)——无法找到明确的答案至于什么是需要的,什么是不需要的。

还假设 dwithin 是最快的过滤器 - 假设我有一个最大距离? ST_Distance 是一个较慢的函数,对于较大的数据库可能会变慢?

如果我现在使用 sqllite3 进行测试还会有什么影响吗?它有这些功能吗?继续阅读有关 PostGIS 和其他限制的信息。

非常感谢你!

最佳答案

我最终做了什么——据我所知:

所以我可以要么让 Sqlite3 成为一个空间数据库——我尝试过,但是要么在使其成为空间数据库时遇到了问题,要么只是我后来遇到的 GDAL 问题使我无法成功,无论如何我都计划稍后使用 PostgreSQL决定是时候搬过去了

然后我决定使用 PostGIS 和 OSGeo4W 切换到 PostgreSQL,并为 PostgreSQL 安装了 psycopg2。
安装 PostgreSQL: PostGIS 时,我更喜欢“创建空间数据库”以及我想在安装时使用的名称 - 只是因为我尝试创建自己的数据库,但最终我几乎没有按照创建的方式添加功能安装。 (是的,我是新人,不知道如何自己创建一个新的空间数据库,哈哈)还要对所有环境变量说"is",帮助一切找到所需的文件。

不是 100%,但我相信一切都需要是相同的位,如果您使用 32 位 python,那么您需要 32 位其他所有内容(包括 OSGeo4W)(我相信这也包括 Windows,因为您可能没有 32 位否则需要 dll)

安装 OSGeo4W 后,您需要直接在设置中指向 GDAL Dll:GDAL_LIBRARY_PATH=your_path_to_the_dll/gdal204.dll
**设置为您拥有的实际 dll,django 似乎只查找版本 2.2 及更低版本,因此如果您只输入路径,它只会找到 gdal202 和一些旧版本。

(您可以编辑 site-packages.django.contrib.gis.gdal 下的 libgdal.py 文件,以便它搜索较新版本的 gdal)

我非常头疼,试图让它在我一年前的 Windows 7 64 位安装上工作,其中有很多随机的 Visual Studio 安装,诸如 32 位 python、32 位 gdal 等......这是一个困惑,Dll 错误左、右,几天的思考我几乎已经拥有它(我没有) - 如果你有很多问题,我强烈建议全新的 Windows 10 64 位安装和一切 64 位 - 或者做似乎是更好的建议并尝试ubuntu 上的开发。

TRLR:如果您遇到很多问题并且不知道该怎么办:
按照此处 Django 站点上的说明安装新的 Windows 10 64 位,使用所有内容的 64 位版本。 https://docs.djangoproject.com/en/2.1/ref/contrib/gis/install/#windows然后不要忘记放入您的 GDAL_LIBRARY_PATH

关于python - GIS、PointField 和 Geography=True 距离计算的要求,包括数据库问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54345643/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com