我刚刚将models.py的位置更改为另一个应用程序的目录。现在,当使用南方进行迁移时,它说:
D:\logos-education-system>manage.py schemamigration core --auto
You cannot use automatic detection, since the previous migration does not have t
his whole app frozen.
Either make migrations using '--freeze core' or set 'SOUTH_AUTO_FREEZE_APP = Tru
e' in your settings.py.
D:\logos-education-system>
不知何故,South无法将models.py(在新文件夹中)与数据库中已有的数据联系起来,并从那里继续。
所以,我的问题是:如何让南方忘记models.py所在的旧文件夹,并以南方认为总是存在的方式使用新文件夹?
提前致谢。
答案 0 :(得分:5)
通过几个步骤,我做到了。
首先,我手动更改了南迁移表,将app_name设置为新的app_name
然后我浏览了所有当前的迁移.py文件,并将旧文件夹的所有数据更改为新文件夹。
此外,仍然在.py迁移文件中,我确保所有complete_apps = ['OLD_APP_NAME']也已更改为complete_apps = ['NEW_APP_NAME']。
通常就像models.py一直在那里一样,使用模式迁移。