In meiner django-Anwendung (django 1.8) verwende ich zwei Datenbanken, eine ' default
', die MySQL ist, und eine andere, die eine schemalose, schreibgeschützte Datenbank ist.
Ich habe zwei Modelle, die auf diese Datenbank zugreifen, und ich möchte diese beiden Modelle dauerhaft von Daten- und Schema-Migrationen ausschließen:
makemigrations
sollte niemals Änderungen erkennen und Migrationen für sie erstellen migrate
sollte sich niemals über fehlende Migrationen für diese App beschweren Bisher habe ich verschiedene Dinge ausprobiert, alles ohne Erfolg:
managed=False
Meta für beide Modelle allow_migrate
-Methode hinzugefügt, die False
für beide Modelle zurückgibt Hat jemand ein Beispiel dafür, wie dieses Szenario erreicht werden kann? Danke für Ihre Hilfe!
Bisher habe ich verschiedene Dinge ausprobiert, alles ohne Erfolg:
- hat die Option managed = False Meta für beide Modelle
verwendet
Diese Option (das Attribut managed = False
in den Metaoptionen des Modells) scheint die Anforderungen zu erfüllen.
Wenn nicht, müssen Sie die Frage erweitern, um genau zu sagen, was das Besondere an Ihrem Modell ist, dass managed = False
die Aufgabe nicht erledigt.
Ich dachte, ich habe ein Problem mit Makemigrationen. Es gibt vor, die Migration für managed = False
model durchzuführen, aber für dieses Modell wurde kein SQL-Code generiert
Hier ist mein Beispiel, Modell Smdocumets
unmanaged, und es wurde kein SQL-Code generiert.
%Vor%python manage.py Makemigrationen
%Vor%python manage.py sqlmigrate Monitor 0005
Tags und Links python django django-models django-migrations