2015-04-15 7 views
13

Ich habe eine Django-App mit der Version 1.6.5, ich versuche, es auf 1.8 zu aktualisieren, aber auf dem Weg bekam ich den untenstehenden Fehler gleich danach die django-Version wurde auf 1.8 erhöhtEs gibt kein South-Datenbankmodul 'south.db.postgresql_psycopg2' für Ihre Datenbank django

There is no South database module 'south.db.postgresql_psycopg2' for your database. Please either choose a supported database, check for SOUTH_DATABASE_ADAPTER[S] settings, or remove South from INSTALLED_APPS. 

-Code

INSTALLED_APPS = [ 
    'django_messages', 
    'avatar', 
    'tinymce', 
    'south', 
    'tracking', 
    ...... 
    ] 

DATABASES = { 
    'default': { 
     'ENGINE': 'django.db.backends.postgresql_psycopg2', 
     'HOST': '127.0.0.1', 
     'NAME': 'xxxxxx', 
     'USER': 'xxxxxx', 
     'PASSWORD': 'xxxxxx', 
     }, 
    } 

Also, was das Problem war und was muß getan werden, um dieses Problem beheben?

Ich habe sogar mit dem unten Einstellung versucht und die gleichen Fehler zu erhalten, wenn der django lokalen Server laufen

SOUTH_DATABASE_ADAPTERS = { 
    'default': "south.db. postgresql_psycopg2" 
} 

Antwort

43

Die Lösung i auf das obige Problem gefunden wurde gerade auseinander den Süden von virtueller Umgebung entfernt von all den oben genannten Änderungen

+4

angegeben Dies ist, was das Problem für mich verursacht. 'pip uninstall South' und meine Migrationen funktionierten. – Kobold

+0

Das hat es geschafft! Vielen Dank. –

2

Da Django 1.7, Migrationen Teil des Rahmens sind. Anstatt South zu verwenden, möchten Sie wahrscheinlich migrate to django.db.migrations.

Im Allgemeinen sollten Sie die Versionshinweise (für 1.7 und 1.8) immer lesen, wenn Sie ein solches Update durchführen.

+0

: danke für den Link –

+2

Eigentlich habe ich südlich von installed_apps entfernt und immer noch mit dem gleichen Fehler wie oben, was sollte das Problem sein? –

+0

Haben Sie https://docs.djangoproject.com/en/1.8/topics/migrations/#upgrading-from-south gelesen und alles erledigt? Das Entfernen von Süden ist nur einer der Schritte. – niconoe

9

sind Sie wahrscheinlich immer noch irgendwo mit einem Import nach Süd verweisen.

Nur:

pip uninstall south 

Dann:

python manage.py runserver 

und zu lösen Importfehler.

0

Wenn Sie Django < 1.7 verwenden, sollten Sie auch South> = 1.0.1 installieren, falls Sie dies noch nicht getan haben. Dies wird nicht als eine Abhängigkeit für Benutzer aufgeführt, die auf Django> = 1.7 sind und sie nicht benötigen.

Verwandte Themen