django报错:no such table: main.auth_user__old

OperationalError at /admin/userinfo/userinfo/1/delete/
no such table: main.auth_user__old
Request Method:	POST
Request URL:	http://127.0.0.1:8000/admin/userinfo/userinfo/1/delete/
Django Version:	2.0.6
Exception Type:	OperationalError
Exception Value:	
no such table: main.auth_user__old
Exception Location:	C:\ProgramInstall\Anaconda3\envs\ZDjangoWeb\lib\site-packages\django\db\backends\sqlite3\base.py in execute, line 303
Python Executable:	C:\ProgramInstall\Anaconda3\envs\ZDjangoWeb\python.exe
Python Version:	3.7.3
Python Path:	
['C:\\01seafile\\工作资料库\\ZDjangoWeb',
 'C:\\ProgramInstall\\Anaconda3\\envs\\ZDjangoWeb\\python37.zip',
 'C:\\ProgramInstall\\Anaconda3\\envs\\ZDjangoWeb\\DLLs',
 'C:\\ProgramInstall\\Anaconda3\\envs\\ZDjangoWeb\\lib',
 'C:\\ProgramInstall\\Anaconda3\\envs\\ZDjangoWeb',
 'C:\\Users\\zhuyr\\AppData\\Roaming\\Python\\Python37\\site-packages',
 'C:\\ProgramInstall\\Anaconda3\\envs\\ZDjangoWeb\\lib\\site-packages']
Server time:	Fri, 16 Aug 2019 06:14:24 +0000

好坑的一个bug,跑测试的时候用的Django是2.0.9的版本,python3.7,结果怎么改都会出问题,在stackoverflow发现竟然是sqlite的版本问题,需要降级到2.6之前的版本,怎么降级sqlite没找到,还好Django在2.1.5修复了这个bug, https://code.djangoproject.com/ticket/29182。
所以就升级一下Django吧,2.1.5之后就没问题了

命令:pip install Django –upgrade

或直接指定版本:pip install Django==2.1.5

可以使用   python -m django –version       查看版本号

更新Django版本且备份好数据库里的数据后,删除app下的migrations文件夹,删除db.sqlite3,重新进行数据库迁移。

#先迁移默认的app

python manage.py migrate

#再迁移自己的app

python manage.py makemigrations polles

python manage.py migrate polles

数据库迁移以后,再创建超级用户,在后台的Django administration,执行添加修改操作。
 

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值