CommandError: App 'Bücher' hat Migrationen. Nur die Befehle sqlmigrate und sqlflush können verwendet werden, wenn eine App Migrationen aufweist

7

Ich versuche etwas über python-django zu erfahren. Ich möchte selbst benannte Bücher erstellen.

Wenn ich diesen Befehl ausgeführt habe

%Vor%

Folgefehler tritt auf

  

CommandError: App 'Bücher' hat Migrationen. Nur die Befehle sqlmigrate und sqlflush können verwendet werden, wenn eine App Migrationen aufweist.

Ich habe nicht verstanden, warum dieser Fehler auftaucht und was bedeutet das? Jede Hilfe wäre willkommen. Danke

    
rishi kant 27.05.2015, 08:11
quelle

3 Antworten

5

Sie können entweder

ausführen %Vor%

gefolgt von

%Vor%

oder löschen Sie einfach den Migrationsordner

BEARBEITEN - 'Makemigration' in 'Makemigrationen' geändert

    
therealprashant 27.05.2015, 08:27
quelle
0

Nach Eingabe von python manage.py sqlall --help bekomme ich Folgendes:

Prints the CREATE TABLE, custom SQL and CREATE INDEX SQL statements for the given model module name(s).

Es gibt das SQL aus, das zum Erstellen dieser Tabellen verwendet wird. Da sie bereits existieren, druckt Django sie nicht und weist an, sqlmigrate (Druck-SQL für eine bestimmte Migration) oder sqlflush (Druck-SQL, der Tabellen in ihren Ausgangszustand zurückversetzt) ​​zu verwenden.

    
dzejdzej 27.05.2015 09:03
quelle
0

Aus der django-Dokumentation von sqlall

  

django-admin.py sqlall

     

Gibt die CREATE TABLE- und Initial-Data-SQL-Anweisungen für den angegebenen Ausdruck aus   App-Name (n).

In späteren Versionen von django ab 1.7 kannst du das gleiche tun:

python manage.py sqlmigrate appname migration_name

Wenn Sie dem Django-Tutorial folgen, ist dies in Ihrem Fall

python manage.py sqlmigrate books 0001

Das hat bei mir in django 1.8 funktioniert. Sie können mehr aus der Dokumentation von sqlmigrate lesen

  

django-admin sqlmigrate

     

Druckt das SQL für die benannte Migration. Dies erfordert eine aktive Datenbankverbindung, die zum Auflösen von Constraint-Namen verwendet wird. Das bedeutet, dass Sie das SQL gegen eine Kopie der Datenbank generieren müssen, auf die Sie es später anwenden möchten.

    
Sнаđошƒаӽ 24.12.2015 07:28
quelle

Tags und Links