Der einfachste Weg, ein Modell mit Django / South umzubenennen?

Ich habe auf der Website von South, Google und SO nach einer Antwort darauf gesucht, aber keinen einfachen Weg gefunden, 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 Foo in Bar konvertieren, nämlich

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 @ zu änderFoo zuBar, aber ignoriere dasfoo Mitglied inFooTwo zur Zeit

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 eine benutzerdefinierte Migration, z.db.rename_table('city_citystate', 'geo_citystate'), aber ich bin mir nicht sicher, wie ich den Fremdschlüssel in diesem Fall reparieren soll.Eine einfachere Möglichkeit, die Sie kennen?

Antworten auf die Frage(8)

Ihre Antwort auf die Frage