我的模特是foo.bar.MyModel。现在是boo.far.MyModel。架构是一样的。
boo.far.MyModel.objects.all()现在显然是空的。有没有办法在数据库中运行对象并更改与之关联的类?某种类型的搜索和替换?这不是很多对象,这只是一个测试数据库,所以我希望手工完成。不想使用南方或类似的东西。我意识到我也可以重新创建旧的包/类然后迁移,但我很感兴趣,如果我可以解决这个问题。
编辑:我在Google App Engine上使用非rel后端
答案 0 :(得分:2)
您只需在数据库中重命名模型的表即可。表名是根据app标签和模型的类名构造的,因此MySQL查询是:
RENAME TABLE bar_mymodel TO far_mymodel;
第二个选项是使用“db_table”模型选项覆盖默认表名:
class MyModel(models.Model):
....
class Meta:
db_table = 'bar_mymodel'