Ich habe auf der Website von South, Google und SO nach einer Antwort darauf gesucht, konnte aber keinen einfachen Weg finden, dies zu tun.
Ich möchte ein Django-Modell mit South umbenennen. Angenommen, Sie haben Folgendes:
class Foo(models.Model):
name = models.CharField()
class FooTwo(models.Model):
name = models.CharField()
foo = models.ForeignKey(Foo)
und Sie möchten nämlich Foo in Bar konvertieren
class Bar(models.Model):
name = models.CharField()
class FooTwo(models.Model):
name = models.CharField()
foo = models.ForeignKey(Bar)
Um es einfach zu halten, versuche ich nur, den Namen von Foo
in zu ändern Bar
, aber ignoriere das foo
Mitglied FooTwo
vorerst.
Was ist der einfachste Weg, dies mit South zu tun?
- Ich könnte wahrscheinlich eine Datenmigration durchführen, aber das scheint ziemlich kompliziert zu sein.
- Schreiben Sie beispielsweise eine benutzerdefinierte Migration,
db.rename_table('city_citystate', 'geo_citystate')
aber ich bin nicht sicher, wie der Fremdschlüssel in diesem Fall behoben werden soll. - Ein einfacher Weg, den Sie kennen?