Обновление: с mysql-5.5.30-1.fc18.x86_64
и
MySQL-python==1.2.4
Django==1.4.2
South==0.7.6
работает следующее:
class Migration(SchemaMigration_:
def forwards(self, orm):
db.rename_column('app_model', 'old_id', 'new_id')
db.alter_column('app_model', 'new_id',
self.gf('django.db.models.fields.related.ForeignKey')(
blank=True,
null=True,
to=orm['app.OtherModel']
))
def backwards(self, orm):
db.rename_column('app_model', 'new_id', 'old_id')
db.alter_column('app_model', 'old_id',
self.gf('django.db.models.fields.related.ForeignKey')(
blank=True,
null=True,
to=orm['app.OtherModel']
))
Как комментирует @Eloff, Юг не может найти исходный FK по неизвестным причинам, ноэто не имеет значения.Нет необходимости в переносе данных (я считаю), так как значения pk не должны меняться.
Спецификация поля (с использованием self.gf
) взята из автоматически созданных миграций Юга для согласованности.