修复 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处理cookie详解
Feb 07 Python
python比较2个xml内容的方法
May 11 Python
Python初学时购物车程序练习实例(推荐)
Aug 08 Python
python paramiko模块学习分享
Aug 23 Python
python实现简单flappy bird
Dec 24 Python
Pandas0.25来了千万别错过这10大好用的新功能
Aug 07 Python
python 实现绘制整齐的表格
Nov 18 Python
tensorflow 获取所有variable或tensor的name示例
Jan 04 Python
Django表单提交后实现获取相同name的不同value值
May 14 Python
keras的siamese(孪生网络)实现案例
Jun 12 Python
如何在python中实现线性回归
Aug 10 Python
python使用多线程查询数据库的实现示例
Aug 17 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
Ajax+PHP 边学边练之四 表单
2009/11/27 PHP
一个PHP的QRcode类与大家分享
2011/11/13 PHP
在PHP中设置、使用、删除Cookie的解决方法
2013/05/06 PHP
JQuery自定义事件的应用 JQuery最佳实践
2010/08/01 Javascript
解析jQuery与其它js(Prototype)库兼容共存
2013/07/04 Javascript
JavaScript实现SHA-1加密算法的方法
2015/03/11 Javascript
JavaScript之Object类型介绍
2015/04/01 Javascript
基于Javascript实现倒计时功能
2016/02/22 Javascript
图文详解Heap Sort堆排序算法及JavaScript的代码实现
2016/05/04 Javascript
jQuery基础知识点总结(DOM操作)
2016/06/01 Javascript
Angularjs手动解析表达式($parse)
2016/10/12 Javascript
AngularJS变量及过滤器Filter用法分析
2016/11/22 Javascript
localStorage实现便签小程序
2016/11/28 Javascript
vue2.0结合DataTable插件实现表格动态刷新的方法详解
2017/03/17 Javascript
Javascript实现信息滚动效果
2017/05/18 Javascript
highCharts提示框中显示当前时间的方法
2019/01/18 Javascript
JavaScript ES2019中的8个新特性详解
2019/02/20 Javascript
微信小程序--获取用户地理位置名称(无须用户授权)的方法
2019/04/29 Javascript
[01:12]快闪回顾DOTA2亚洲邀请赛(DAC) 静候2018新征程开启
2018/03/11 DOTA
[03:55]TI9战队采访——TNC Predator
2019/08/22 DOTA
[55:35]DOTA2-DPC中国联赛 正赛 CDEC vs Dragon BO3 第二场 1月22日
2021/03/11 DOTA
对python的输出和输出格式详解
2018/12/08 Python
详解Python安装tesserocr遇到的各种问题及解决办法
2019/03/07 Python
Python3.5实现的三级菜单功能示例
2019/03/25 Python
基于Python 中函数的 收集参数 机制
2019/12/21 Python
Window版下在Jupyter中编写TensorFlow的环境搭建
2020/04/10 Python
python 进程池pool使用详解
2020/10/15 Python
利用css3制作3D样式按钮实现代码
2013/03/18 HTML / CSS
HTML5之SVG 2D入门6—视窗坐标系与用户坐标系及变换概述
2013/01/30 HTML / CSS
HTML5触摸事件演化tap事件介绍
2016/03/25 HTML / CSS
HOTEL INFO英国:搜索全球酒店
2019/08/08 全球购物
交通文明倡议书
2014/05/16 职场文书
财务审计整改报告
2014/11/06 职场文书
公务员政审材料
2014/12/23 职场文书
小学英语教师研修感悟
2015/11/18 职场文书
五年级作文之劳动作文
2019/11/12 职场文书