Ich habe ein Problem mit der Erweiterung. Mein Django Projekt hat myapp Modul/Anwendung. Mein Projekt verwendet den Süden, um die Schema-Migrationen durchzuführen. Auf localhost habe ich ./manage.py schemamigration myapp --initial
ausgeführt, dann habe ich migrieren Befehl ausführen.django + south: Befehl migrieren erstellt keine Tabelle in der Datenbank
Aber wenn in der Produktionsumgebung ich migrate
Befehl ausführen, erstellt dies nicht die entsprechende Tabelle (MyApp-Modelle) in der Datenbank.
Es ist seltsam, denn wenn ich migrate --list
ausführen, hat myapp Migration und sie sind alle markiert (mit * Symbol).
Also, ich überlege, löschen myapp und neu von Grund auf neu (mit entsprechenden Migrationen). Gibt es eine bessere Lösung?
EDIT: Ich habe versucht, myapp zu löschen und es von Grund auf neu zu erstellen. Also ich habe auch Tabellen von myapp in der Datenbank (auf localhost und auf Produktionsserver) löschen, und schließlich i ausgeführt habe:
schemamigration myapp --initial
Befehl auf localhost
migrate myapp
Befehl auf localhost
migrate myapp 0001 --fake
auf Produktionsserver
, aber South erstellt weiterhin nicht die Tabellen von myapp in der Datenbank des Produktionsservers.
Warum nennst du 'migrieren ... --fake'? '--fake' bewirkt, dass South nur die Migration als erfolgreich markiert, aber das tatsächliche DB-Schema nicht berührt. – ilvar