He estado buscando una respuesta a esto en el sitio de South, Google y SO, pero no pude encontrar una manera simple de hacerlo.
Quiero cambiar el nombre de un modelo de Django usando South. Digamos que tiene lo siguiente:
class Foo(models.Model):
name = models.CharField()
class FooTwo(models.Model):
name = models.CharField()
foo = models.ForeignKey(Foo)
y quieres convertir Foo a Bar, a saber
class Bar(models.Model):
name = models.CharField()
class FooTwo(models.Model):
name = models.CharField()
foo = models.ForeignKey(Bar)
Para simplificarlo, solo estoy tratando de cambiar el nombre de Foo
a Bar
, pero ignoro al foo
miembro FooTwo
por ahora.
¿Cuál es la forma más fácil de hacer esto usando South?
- Probablemente podría hacer una migración de datos, pero eso parece bastante complicado.
- Escriba una migración personalizada, por ejemplo
db.rename_table('city_citystate', 'geo_citystate')
, pero no estoy seguro de cómo solucionar la clave externa en este caso. - ¿Una forma más fácil que sabes?