/ / geodjango syncdb erreurs. De geodjango tutorial - python, django, postgresql, gis, geodjango

erreurs geodjango syncdb. De geodjango tutorial - python, django, postgresql, gis, geodjango

J'ai suivi l'installation et le tutoriel de geodjango (Windows XP) à la perfection Je cours django 1.2 Lorsque je parviens à synchroniser et exécuter, je reçois le message suivant.

    raise ImproperlyConfigured(error_msg)
django.core.exceptions.ImproperlyConfigured:"django.db.backends.postgis" isn
an available database backend.
Try using django.db.backends.XXX, where XXX is one of:
"dummy", "mysql", "oracle", "postgresql", "postgresql_psycopg2", "sqlite3
Error was: No module named postgis.base

J'ai essayé de changer en "django.db.backends.postgresql_psycopg2" Mais alors je reçois cette réponse:

AttributeError: "DatabaseOperations" object has no attribute "geo_db_type"

Quand j'essaie posgresql:

    **raise ImproperlyConfigured("Error loading psycopg module: %s" % e)
django.core.exceptions.ImproperlyConfigured: Error loading psycopg module: No mo
dule named psycopg**

N'est-il pas supposé être un postgis que j'ai téléchargé et installé avec succès? pourquoi ça ne marche pas? Je suis nouveau et j'essaie d'apprendre, toute aide serait grandement appréciée.

Réponses:

25 pour la réponse № 1

Le problème est, dans settings.py

"django.db.backends.postgis"

C'est supposé être

django.contrib.gis.db.backends.postgis

ça devrait le faire.


1 pour la réponse № 2

J'ai rencontré la même erreur sur Mac OS X 10.6 après avoir suivi les instructions du site geodjango et installé des paquets avec Homebrew. Apparemment, la documentation de Geodjango donnait des instructions incorrectes / obsolètes sur la façon de l’installer. Pour que Geodjango fonctionne, j'ai suivi plusieurs étapes:

  1. En ce moment, GeoDjango 1.4 ne fonctionne pas bien avec PostGIS 2.0 (qui est la version Homebrew installée lorsque j'ai suivi les instructions de la documentation de GeoDjango). Il me fallait donc installer PostGIS 1.5. Je l'ai fait en utilisant les commandes Terminal suivantes (pour que cela fonctionne, vous devez avoir installé Homebrew):

    brew tap homebrew/versions
    brew install postgis15
    brew untap homebrew/versions
    
  2. PostGIS 1.5 ne joue pas bien avec PostGreSQL 9.2 (qui est la version Homebrew installée lorsque j’ai suivi les instructions de la documentation de Geodjango). J'ai donc installé PostGreSQL 9.1. J’oublie les commandes Homebrew que j’avais utilisées pour installer PostGreSQL 9.1, mais elles devraient être similaires à l’étape précédente.

  3. Dans mon cas, les étapes précédentes n'étaient pas suffisantes pour que Geodjango soit opérationnel. Lorsque j'ai essayé de relancer "syncdb" dans Django, j'ai découvert une nouvelle erreur dans Terminal:

    django.core.exceptions.ImproperlyConfigured: Error loading psycopg module:
    No module named psycopg
    
  4. Au départ, je pensais que ma copie de psycopg2 etPostgreSQL9.1 n'était pas sur mon PYHTONPATH, je les ai donc ajoutés. J'ai également bricolé pour m'assurer que Django exécutait PostgreSQL 9.1 au lieu de 9.2. J'ai utilisé "initdb / usr / local / var / postgres".

  5. Ensuite, je devais faire une configuration de base de données. J'ai configuré un modèle dans PostGIS et un "rôle" (/ utilisateur) pour la base de données. Pour ce faire, j'ai suivi les instructions de la documentation de Geodjango. J'ai reçu de nombreuses erreurs, mais les chercher sur Google et trouver des solutions assez facilement.

  6. Ensuite, GeoDjango a commencé à fonctionner correctement!

Cette source est la plus utile que j'ai trouvée et des liens vers d'autres URL utiles traitant de certaines de ces questions plus en détail: http://pragmaticstartup.wordpress.com/2012/09/26/installing-django-postgis-postgres-on-os-x-version-hell/