vor allem Entschuldigung für mein schlechtes Englisch.Wie man ein bestehendes Modell auf Django in zwei oder mehr teilen
Ich habe ein Problem, ich bekomme eine Django-App, um einige Änderungen vorzunehmen und eines der Dinge, die ich tun muss, ist die Modelle zu teilen. Weil einige der Modelle in der App zuooooo groß sind. Aber ich kann die Datenbank und die Informationen nicht verlieren, weil einige der Modelle mehr als 2000 Objekte haben.
Ich denke, ich werde einige Querys in SQL tun müssen, aber vielleicht kann mir jemand eine Hand geben oder Ideen, wie es geht.
Dies ist das Beispiel dafür, was ich brauche
Beispiel des ursprünglichen Modells
class order(models.Model):
client = models.ForeignKey(Client)
brand = models.CharField(max_length=50)
dispositive = models.CharField(max_length=100)
serial = models.CharField(max_length=100)
work = models.CharField(max_length=50)
detail = models.TextField()
price = models.IntegerField(default=0)
deposit = models.IntegerField(default=0)
created_date = models.DateTimeField(
default=timezone.now)
Nun, ich das Modell aufgespalten müssen auf dieser
class Order(models.Model):
client = models.ForeignKey(Client)
created_date = models.DateTimeField(
default=timezone.now)
published_date = models.DateTimeField(
blank=True, null=True)
class OrderDetail(models.Model):
order = models.ForeignKey(Order)
work = models.CharField(max_length=50)
detail = models.TextField()
price = models.IntegerField(default=0)
deposit = models.IntegerField(default=0)
class OrderDispositive(models.Model):
order = models.ForeignKey(Order)
brand = models.CharField(max_length=50)
dispositive = models.CharField(max_length=100)
serial = models.CharField(max_length=100)
Nun, ich habe wirklich keine Ahnung darüber, wie man das macht, ohne irgendwelche der vorhandenen Daten in der Datenbank zu verlieren!
ich weiß, dass ich dies nach tun, um zu ändern habe, die Ansichten und die Vorlagen die korrekten Daten zu erhalten, aber ich brauche wirklich einige Modelle für zukünftige Änderungen
Vielen Dank für Ihre Hilfe zu beheben !!!
Warum müssen Sie das Modell an erster Stelle teilen? Ist in Ihrem neuen System mehr als ein OrderDetail-Datensatz für jede Bestellung zulässig? – e4c5
Das in der Frage vorgestellte Modell ist ein Beispiel. Ein Freund möchte einen Teil der App implementieren, der die großen Modelle hat, aber in der neuen App, die wir machen, haben wir eine andere db-Struktur, aber wir können die Strukturen vereinheitlichen, wenn wir das schaffen könnten! – marcosgue
Wie kann Ihnen jemand eine gute Antwort geben, wenn Sie keine genauen Informationen zur Verfügung stellen? – e4c5