我遵循了GeoDjano中提到的所有讨论和步骤,但陷入了另一个问题,无法获得GeoDjango可用的GDAL。
在Python (C:\Python 27)中,我能够导入gdal,但是GeoDjano表示在Django/GeoDjango应用程序Shell下错误查询gdal.HAS_GDAL,并在涉及GDAL的任何几何操作(例如country.geom.geojson生成)上获得错误:
GEOSException: GeoJSON output only supported when GDAL is installed我已将Python2.7安装为C:\Python27 27,其中包含:
C:\Python27\; C:\Python27\bin; C:\Python27\scripts; C:\Program Files\GDAL;和其他环境变量如下:
GDAL_DATA C:\Program Files\GDAL\gdal-data
GDAL_DRIVER_PATH C:\Program Files\GDAL\gdalplugins
GDAL_LIBRARY_PATH C:\Program Files\GDAL还试图将GDAL_LIBRARY_PATH="C:\\Program Files\\GDAL"放入settings.py中,但没有奏效。
我正在使用Windows7终极x64、Python2.7.3、Django 1.5.1,并尝试安装/重新安装GDAL和Python绑定二进制文件。
发布于 2017-03-19 01:38:48
Python没有检测到GDAL安装,因为Windows环境变量没有正确设置。
我只能解决这个问题,放弃OSGeo4w并使用GDAL和MapServer。
您只需要编辑libgdal.py (正如Roberto Ribeiro所说,如果您使用的是GDALVersion2.x,而可能不是您的案例)。
发布于 2016-09-19 21:25:45
问题在于django如何调用GDAL模块:它从有限的可能DLL列表(gdal111、gdal110、gdal19等)中查找GDAL路径中的特定gdal110。
问题是,根据您从哪个二进制文件安装GDAL,它可能有不同的DLL名称。例如,Gohlke的二进制文件生成一个"gdal201.dll",它不在django列表中。因此,它找不到它。
您需要做的是,首先在GDAL安装中找到DLL的名称(应该是GDAL文件夹中最大的文件大小),然后将其添加到位于..\Python27\lib\site-packages\django\contrib\gis\gdal\libgdal.py的libgdal.py列表中。
该列表位于第26行,应改为: lib_names =‘gdal17 111’,‘gdal17 110’,‘gdal17 19’,‘gdal17 18’,'gdal17‘
...or的一些变化,取决于您的django版本。只要将您的DLL名称添加到列表中,它就会做得很好。
https://stackoverflow.com/questions/23197431
复制相似问题