您好,登录后才能下订单哦!
这篇文章将为大家详细讲解有关如何解决修复Django migration时遇到的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
在跑 ./manage.py test 时,先会创建一个测试用的数据库,这时我遇到了一个问题:
ValueError: Related model 'telegrambot.User' cannot be resolved
这个错误是指,相关的 Model telegrambot.User 无法解析,这是怎么回事?
然后因为 ./manage.py test 根本没有打印出其他有用的信息,我也不知道是发生在哪里的错误,这时我想到了一个办法,就是尝试手动建立一个数据库,叫 test,然后进行 migration:
./manage.py migrate --database test
一跑,终于有详细的输出,定位到了具体出错的那个 Migration。原来是我的一个 App 的 Model 依赖了 telegrambot.User,但是找不到。这是什么原因?
我尝试在 settings.py 的 INSTALLED_APPS 把 telegrambot 的顺序调到前面来,也没有用。于是只好启用 StackoverFlow。
原来是我的那个 App 的 Migration 的 dependencies 没有依赖 telegrambot,于是自然不会去找了。
于是把原来的,加了一行 dependency,再尝试 ./manage.py test,问题解决。
class Migration(migrations.Migration): dependencies = [ + ('telegrambot', '0001_initial'), ('powernews', '0004_applenews'), ]
总结:有些命令行工具执行出错时,不会有太多有用的输出信息,这时就可以尝试手动去执行一些操作。
关于“如何解决修复Django migration时遇到的问题”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。