Ich habe zwei Modelle in zwei verschiedenen Anwendungen:Umbenennung Modell breakes Migrationsgeschichte
# app1 models.py
class App1Model(models.Model):
pass
# app2 models.py
from app1.models import App1Model
class App2Model(App1Model):
pass
Und ich will App1Model umbenannt und dann App2Model neu explizit OneToOneField
statt Magie app1model_ptr
zu haben. Also erstelle ich eine Migration, die App2Model komplett löscht (ich interessiere mich nicht für Daten, aus welchem Grund auch immer), es läuft erfolgreich. Dann erstelle ich eine Migration in der ersten App, die App1Model umbenennt und es läuft auch perfekt. Ich überprüfe diese Tabelle mit einem neuen Namen und all seinen Beziehungen (und auch dazu), es ist in Ordnung.
Und dann seltsame Sache passiert: wenn ich makemigrations
oder migrate
auf app2 laufen bekomme ich einen Fehler
django.db.migrations.exceptions.InvalidBasesError: Cannot resolve bases for [<ModelState: 'app2.App2Model'>]
Es schlägt fehl, während auf erste Migration von app2 (0001_initial.py in app2 Migrationen) aktuellen Projektstand zu schaffen Wo dieses Modell zum ersten Mal erstellt wurde, indem es von App1Model mit seinem alten Namen geerbt wurde. Gibt es eine Möglichkeit, dies zu beheben? Im aktuellen Zustand App2Model
bereits gelöscht, App1Model
umbenannt und ich kann nichts mit Migrationen auf app2 wegen dieses Problems tun.
P.S. Ich benutze 1.10.2 Django