修复 Django migration 时遇到的问题解决


Posted in Python onJune 14, 2018

今天想给自己的 Blog 加点功能,顺便补上测试,然而第一步在创建测试数据库就过不了,我就尝试解决这个问题。

在跑 ./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'),
  ]

总结:有些命令行工具执行出错时,不会有太多有用的输出信息,这时就可以尝试手动去执行一些操作。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python数据结构树和二叉树简介
Apr 29 Python
python网络编程学习笔记(二):socket建立网络客户端
Jun 09 Python
Python标准库之随机数 (math包、random包)介绍
Nov 25 Python
11个并不被常用但对开发非常有帮助的Python库
Mar 31 Python
Python3.6简单的操作Mysql数据库的三个实例
Oct 17 Python
基于python-pptx库中文文档及使用详解
Feb 14 Python
Python sys模块常用方法解析
Feb 20 Python
Window系统下Python如何安装OpenCV库
Mar 05 Python
解决Opencv+Python cv2.imshow闪退问题
Apr 24 Python
基于pycharm实现批量修改变量名
Jun 02 Python
python将下载到本地m3u8视频合成MP4的代码详解
Nov 24 Python
Pycharm Plugins加载失败问题解决方案
Nov 28 Python
tensorflow 获取模型所有参数总和数量的方法
Jun 14 #Python
tensorflow 获取变量&打印权值的实例讲解
Jun 14 #Python
利用python对Excel中的特定数据提取并写入新表的方法
Jun 14 #Python
Python基于最小二乘法实现曲线拟合示例
Jun 14 #Python
详解python之协程gevent模块
Jun 14 #Python
python 筛选数据集中列中value长度大于20的数据集方法
Jun 14 #Python
浅谈Tensorflow由于版本问题出现的几种错误及解决方法
Jun 13 #Python
You might like
解决form中action属性后面?传递参数 获取不到的问题
2017/07/21 PHP
thinkPHP框架中执行事务的方法示例
2018/05/31 PHP
JQuery 常用方法基础教程
2009/02/06 Javascript
javascript Array.sort() 跨浏览器下需要考虑的问题
2009/12/07 Javascript
JavaScript中继承的一些示例方法与属性参考
2010/08/07 Javascript
广泛收集的jQuery拖放插件集合
2012/04/09 Javascript
js 字符串转换成数字的三种方法
2013/03/23 Javascript
加载远程图片时,经常因为缓存而得不到更新的解决方法(分享)
2013/06/26 Javascript
MyEclipse取消验证Js的两种方法
2013/11/14 Javascript
多个jquery.datatable共存,checkbox全选异常的快速解决方法
2013/12/10 Javascript
js数组方法扩展实现数组统计函数
2014/04/09 Javascript
原生态js,鼠标按下后,经过了那些单元格的简单实例
2016/08/11 Javascript
Javascript计算二维数组重复值示例代码
2016/12/18 Javascript
JS html时钟制作代码分享
2017/03/03 Javascript
Javascript操作dom对象之select全面解析
2017/04/24 Javascript
AngularJS折叠菜单实现方法示例
2017/05/18 Javascript
vue bootstrap小例子一枚
2017/06/09 Javascript
浅谈通过JS拦截 pushState和replaceState事件
2017/07/21 Javascript
使用Vuex实现一个笔记应用的方法
2018/03/13 Javascript
微信小程序dom操作的替代思路实例分析
2018/12/06 Javascript
小程序数据通信方法大全(推荐)
2019/04/15 Javascript
vue中实现点击空白区域关闭弹窗的两种方法
2020/12/30 Vue.js
Python实现列表删除重复元素的三种常用方法分析
2017/11/24 Python
Python实现求一个集合所有子集的示例
2018/05/04 Python
django+xadmin+djcelery实现后台管理定时任务
2018/08/14 Python
python和mysql交互操作实例详解【基于pymysql库】
2019/06/04 Python
利用CSS3实现毛玻璃效果示例源码
2016/09/25 HTML / CSS
程序设计HTML5 Canvas API
2013/04/08 HTML / CSS
AmazeUI 等分网格的实现示例
2020/08/25 HTML / CSS
Stefania Mode英国:奢华设计师和时尚服装
2017/10/23 全球购物
Speedo澳大利亚官网:全球领先游泳品牌
2018/02/04 全球购物
超市实习总结自我鉴定
2013/09/19 职场文书
专家推荐信模板
2014/05/09 职场文书
卫生厅领导班子党的群众路线教育实践活动整改措施
2014/09/20 职场文书
HTML5+CSS+JavaScript实现捉虫小游戏设计和实现
2021/10/16 HTML / CSS
mysql中DCL常用的用户和权限控制
2022/03/31 MySQL