使用LayerMapping将数据从shapefile导入Django(或更确切地说是PostGIS)。似乎格式正确,因为可以使用管理界面查看。安装正确版本的GDAL存在问题,因为OSGeo4W安装了GeoDjango无法识别的较新版本。这可能是相关的,但很难说。该错误消息不是很有帮助。
GDAL似乎可以正常工作,因为导入有效。
我尝试将GDAL_DATA变量设置为C:\Program Files\GDAL\gdal-data
,这应该是正确的,但似乎并没有改变任何内容。
我已经在使用此推荐的修复程序,并在末尾添加了GDAL:
if os.name == 'nt':
import platform
OSGEO4W = r"C:\OSGeo4W"
if '64' in platform.architecture()[0]:
OSGEO4W += "64"
assert os.path.isdir(OSGEO4W), "Directory does not exist: " + OSGEO4W
os.environ['OSGEO4W_ROOT'] = OSGEO4W
# os.environ['GDAL_DATA'] = OSGEO4W + r"\share\gdal"
os.environ['PROJ_LIB'] = OSGEO4W + r"\share\proj"
os.environ['PATH'] = OSGEO4W + r"\bin;" + os.environ['PATH']
GDAL_DATA = r'C:\Program Files\GDAL\gdal-data'
GDAL_LIBRARY_PATH = r'C:\Program Files\GDAL\gdal203.dll'