Heim > Datenbank > MySQL-Tutorial > Wie behebe ich den Fehler „Tabelle existiert nicht' in Django?

Wie behebe ich den Fehler „Tabelle existiert nicht' in Django?

Barbara Streisand
Freigeben: 2024-11-14 22:38:02
Original
951 Leute haben es durchsucht

How to Fix the

Django: Fehler „Tabelle existiert nicht“ wird behoben

Dieser Fehler tritt auf, wenn Django versucht, Datenbankoperationen für eine Tabelle auszuführen, die nicht existiert länger existiert, typischerweise aufgrund einer manuellen Löschung oder einer Änderung der Anwendungsmodelle.

Problem Erläuterung:

Nach dem Löschen der modellbezogenen Tabelle versucht der Befehl syncdb, die Tabelle erneut zu erstellen. Da das Modell für die Tabelle jedoch immer noch in models.py vorhanden ist, erwartet Django, dass die Tabelle vorhanden ist, stellt jedoch fest, dass sie fehlt. Dies führt zum Fehler „Tabelle existiert nicht“.

Lösungsschritte:

  1. Tabellen löschen (Sie haben es bereits getan habe das gemacht).
  2. Kommentieren Sie das Modell ausin models.py.
  3. Migrationen ausführen (Für Django-Versionen >= 1.7):

    • python manage.py makemigrations
    • python manage.py migrieren --fake

    ODER

    Schemamigration ausführen (für Django-Versionen < 1.7):

    • python manage.py schemamigration someapp --auto
    • python manage.py migrate someapp --fake
  4. Kommentar im Modell in models.py.
  5. Migrationen oder Schema erneut ausführen Migration (diesmal ohne --fake).

Beispiel für Django-Versionen >= 1.7:

Beispiel für Django-Versionen < 1.7:

Indem Sie diese Schritte befolgen, können Sie die fehlenden Tabellen neu erstellen und den Fehler „Tabelle existiert nicht“ beheben.

Das obige ist der detaillierte Inhalt vonWie behebe ich den Fehler „Tabelle existiert nicht' in Django?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage