描述
解決了第一個,後續又出現一個,一個個解決,最終達到目的。環境是centos 6, Python 2.7, django 1.11
Error
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
解決:
升級一下django版本,小版本也不妨嘗試一下。
我的就是django 1.11, 升級爲django1.11.2 這個問題就解決了。
pip install django==1.11.2
Error
django.core.exceptions.ImproperlyConfigured: Could not find the GDAL library (tried "gdal", "GDAL", "gdal2.1.0", "gdal2.0.0", "gdal1.11.0", "gdal1.10.0", "gdal1.9.0"). Is GDAL installed? If it is, try setting GDAL_LIBRARY_PATH in your settings.
解決:
GDAL_LIBRARY_PATH = '/home/sue/local/lib/libgdal.so'
Error
django.db.utils.OperationalError: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
解決:
sudo ln -s /tmp/.s.PGSQL.5432 /var/run/postgresql/.s.PGSQL.5432
Error
django.db.utils.OperationalError: fe_sendauth: no password supplied
解決:
geodjango/settings.py 的 pg配置項,把密碼等配置信息填上即可。
例如:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'mydatabase',
'USER': 'mydatabaseuser',
'PASSWORD': 'mypassword',
'HOST': '127.0.0.1',
'PORT': '5432',
}
}
Error
ImportError: Could not find the GEOS library (tried "geos_c", "GEOS"). Try setting GEOS_LIBRARY_PATH in your settings.
解決:
編輯django 項目配置文件
vim geodjango/settings.py
GEOS_LIBRARY_PATH = '/home/bob/local/lib/libgeos_c.so'
參考:
Installing Geospatial libraries
https://docs.djangoproject.com/en/2.1/ref/contrib/gis/install/geolibs/