我试图让Django的SQLite3接受空间查询。本教程建议我将其添加到设置中:
SPATIALITE_LIBRARY_PATH = 'mod_spatialite'它会产生此错误:
django.core.exceptions.ImproperlyConfigured:无法加载SpatiaLite库扩展"mod_spatialite“,因为:找不到指定的模块。
我也试过这样做:
SPATIALITE_LIBRARY_PATH = r'C:\\Program Files (x86)\\Spatialite\\mod_spatialite-4.3.0a-win-x86\\mod_spatialite-4.3.0a-win-x86\\mod_spatialite.dll'如果不添加此变量,则在迁移时会收到此错误:
django.core.exceptions.ImproperlyConfigured:无法找到SpatiaLite库。确保它在您的库路径中,或者在您的设置中设置SPATIALITE_LIBRARY_PATH。
谢谢。。
发布于 2016-10-05 19:12:59
有趣的是,5天后,我也有了同样的问题。经过一番周旋,我终于让它发挥作用了:
设置
SPATIALITE_LIBRARY_PATH = 'mod_spatialite'并将mod_spatialite-x.x.x-win-x86.7z中的所有DLL文件提取到Python安装目录中。dll显然需要与python.exe位于同一个文件夹中。此外,根据您的python安装,我设想mod_spatialite包需要32/64位。如果您丢失了某个dll,那么无论缺少哪个dll文件,您都会得到相同的错误“未找到指定模块”,因此这有点误导。
从http://www.gaia-gis.it/gaia-sins/下载
我使用了mod_spatialite稳定版本4.3.0a x86和Python3.5.2 32位。
关于同一问题的其他线程有各种各样的答案:
发布于 2018-08-25 08:08:50
在Ubuntu18.04上,添加SPATIALITE_LIBRARY_PATH = 'mod_spatialite.so'并安装了libsqlite3-mod-spatialite为我工作。
注意:答案是mod_spatialite,而对我来说,mod_spatialite.so起作用了。
发布于 2016-10-11 12:59:04
这是如何在Python3的虚拟环境中安装SpatiaLite (几乎):
mod_spatialite-[version]-win-x86.7zScripts文件夹中。这部分我不喜欢,但我无法找到一个可行的解决方案,而不触及主Python3安装。
c:\Python35\DLLs\sqlite3.dllcyqlite uznip sqlite3.dll文件到c:\Python35\DLLs\https://stackoverflow.com/questions/39787700
复制相似问题