1

Ich versuche ein Projekt von einer Maschine zur anderen zu bekommen. Dieses Projekt enthält eine umfangreiche log-db-Tabelle. Es ist zu massiv. Also exportierte und importierte ich alle db -Tabellen außer dieser über phpmyadmin.Wie erstellt man fehlende DB-Tabellen in Django?

Nein, wenn ich den migrieren Befehl ausführen würde erwartete ich Django zu schaffen, alles fehlt. Aber es ist nicht.

Wie kann Django nach fehlenden DB-Tabellen suchen und diese erstellen?

Was vermisse ich, warum macht es das nicht? Ich habe das Gefühl, dass der alte Syncdb den Job gemacht hat. Aber die neue --run-syncdb nicht.

Vielen Dank für Ihre Hilfe.

+0

Überprüfen Sie Ihren DB-Status mit Python manage.py migrieren --list http://stackoverflow.com/questions/29683494/what-should-i-use-instead-of-syncdb-in-django-1-9 – mtt2p

+0

Sie machen eine Kopie Ihres Projekts und benötigen einen neuen dB? – mtt2p

Antwort

1

Wenn Sie die Daten exportiert und auf die andere Datenbankeinheit importiert haben, enthält der Teil des Pakets die django_migrations Tabelle. Dies ist im Grunde ein Protokoll aller Migrationen, die von Django erfolgreich ausgeführt wurden.

Da Sie nur die Protokolltabelle gemäß Ihnen weggelassen haben, sollte das wirklich die einzige Tabelle sein, die in Ihrem Schema fehlt. Suchen Sie die Einträge in django_migrations, die dieser Tabelle entsprechen, und löschen Sie sie. Führen Sie dann erneut ./manage.py migrate aus und die Tabelle wird erstellt.

+1

Klingt plausibel. Vielen Dank, ich werde morgen nachsehen. Vielen Dank. – JasonTS

Verwandte Themen