我必须将一些模型从一个应用程序移动到另一个应用程序,并且我按照此答案中的说明进行操作https://stackoverflow.com/a/26472482/188614 https://stackoverflow.com/a/26472482/188614.
基本上我用的是CreateModel
产生的迁移python manage.py makemigrations
,将它们包裹在里面state_operations
,并添加了'db_table'
带有旧表名称的元选项。
一切正常,模型上new_app
正在正确使用旧表。
但如果我跑python manage.py makemigrations new_app
它创造了一个AlterModelTable
每个表的迁移将它们重命名为None
, 像这样:
migrations.AlterModelTable(
name='cidade',
table=None,
),
这是一个错误,还是预期的行为?
我自己也刚刚遇到这个问题。
您遵循的答案将其包含在迁移中new_app
:
options={
'db_table': 'newapp_themodel',
},
这个选项字典应该反映由Meta
你的模型上的类。就我而言,我没有设置db_table
在Meta中,但盲目地复制了选项代码。
您需要更新迁移中的选项newapp
要么删除db_table
如果你没有设置它的值Meta
或匹配您设置的值Meta
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)