2016-10-04 3 views
0

Во-первых, я новичок в django. Я пытаюсь использовать GeoLite (GeoIP2) наборы данных в моей базе данных POSTGIS в Django 1.10. Когда я пытаюсь настроить файл myapp/settings.py, я получаю сообщения об ошибках. Кажется, что в базе данных django существуют бэкэнды базы данных по разным путям. Не могли бы вы объяснить, почему?Настройка базы данных Postgresql POSTGIS

  1. Джанго \ вно \ ГИС \ DB \ движки \ PostGIS
  2. Джанго \ DB \ бэкэндов

После активации моей виртуальной среды python3, когда я пытаюсь установить базу данных по умолчанию в моих настройках. пй файл в PostgreSQL («django.db.backends.postgresql»), я получаю сообщение об ошибке:

AttributeError:”Database Operations’ object has no attribute ‘geo_db_type’. 

Когда я пытаюсь использовать PostGIS как мой движок базы данных (я установить GDAL_LIBRARY_PATH в моей виртуальной среде), яполучить сообщение об ошибке:

django.contrib.gis.db.backends.postgis' is not an available database backend. Try using 'django.db.backends.XXX', where XXX is one of 'mysql', 'oracle', 'postgresql',and 'sqlite'. 
Error was: Cannot import name ‘GDALRaster’. 

Вы можете предложить возможные решения вышеперечисленных сообщений об ошибках? Спасибо.

ответ

1

Установлен GDAL с сайта Кристофера Гольке (32 бит GDAL-2.0.3-cp35-cp35m-win32.whl) в виртуальную среду. Загрузите OSGEO4W (32 бит) и установите опцию Express Web. Создание переменных среды. Задайте переменные среды, как показано ниже:

set PYTHON_ROOT=C:\Python35-32 set GDAL_DATA=C:\Program Files\PostgreSQL\9.6\gdal-data set PROJ_LIB=C:\Program Files\PostgreSQL\9.6\share\contrib\postgis\proj set PATH=%PATH%;%PYTHON_ROOT%;%OSGEO4W_ROOT%\bin reg ADD "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path /t REG_EXPAND_SZ /f /d "%PATH%" reg ADD "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v GDAL_DATA /t REG_EXPAND_SZ /f /d "%GDAL_DATA%" reg ADD "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v PROJ_LIB /t REG_EXPAND_SZ /f /d "%PROJ_LIB%"

Я также установить LD_LIBRARY_PATH в C: \ Python35-32 \ myvenv_python3 \ Lib \ сайта-пакеты \ OSGeo. Затем база данных настроена неправильно и не может импортировать «GDALRaster». Из вашего каталога проектов django можно было бы выполнить миграцию сейчас, используя: python manage.py migrate

Смежные вопросы