我在工作的 django 1.9 应用程序中设置 geodjango 时遇到此错误。
我的应用程序位于亚马逊 EC2 实例和 RDS postgres 实例中。
错误是:
django.core.exceptions.ImproperlyConfigured: 'django.contrib.gis.db.backends.postgis' isn't an available database backend.
Try using 'django.db.backends.XXX', where XXX is one of:
'mysql', 'oracle', 'postgresql', 'sqlite3
我做了什么:
修改我的项目settings.py以包括:
修改我的应用程序models.py以从django.contrib.gis.db导入模型,而不是django.db
你猜我错过了什么吗?
我也有同样的问题 我安装了 osgeo 然后导航到丢失的库
> # Build paths inside the project like this: os.path.join(BASE_DIR, ...) BASE_DIR =
> os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
> TEMPLATE_DIR=os.path.join(BASE_DIR,'templates')
这些是我缺少的库:
GDAL_LIBRARY_PATH = r'C:\OSGeo4W64\bin\gdal204.dll'
GEOS_LIBRARY_PATH=r'C:\OSGeo4W64\bin\geos_c.dll'
我也有同样的问题。我运行了
pip install gdal
,它显示了有关我的系统上缺少 libffi 库的错误消息。安装正确的库(libffi6 on AUR
)后,我再次运行pip install gdal
,问题得到解决。
我发现我的 libgdal 库给我带来了问题并给了我这个错误。
我在运行 Django 1.11 和 GDAL 2.0 的 conda 环境下的 Windows 中工作。更改 GDAL 和 django 版本似乎没有解决任何问题。但是,将 libgdal 版本设置为 1.11.2 似乎为我清除了错误。
切换回默认的sqlite3引擎,然后再回到postgis,神秘地解决了问题。