加入收藏 | 设为首页 | 会员中心 | 我要投稿 北几岛 (https://www.beijidao.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Python3 Django2.0 migrate 不能创建表

发布时间:2021-07-06 05:58:52 所属栏目:大数据 来源: https://blog.csdn.net/yilovex
导读:在使用 Django2.0 做项目的时候,改了数据表一些字段,想删除后重新使用 python3 manage.py makemigrations python3 manage.py migrate 生成新的数据表,结果就出现了以下问题: 一、migrate?没有新生成数据表 1、删除?app 目录下的数据库文件和缓存文件 rm

在使用 Django2.0 做项目的时候,改了数据表一些字段,想删除后重新使用

python3 manage.py makemigrations 
python3 manage.py migrate 

生成新的数据表,结果就出现了以下问题:

一、migrate?没有新生成数据表

1、删除?app 目录下的数据库文件和缓存文件

rm -r migrations/ __pycache__/

2、执行?makemigrations 没有问题,但是执行?migrate 时,显示?No migrations to apply,没有新生成数据表。

3、在?django_migrations 这张表里面,记录这有关创建表的记录,删除对应的数据表在执行?migrate,数据表顺利生成。

在执行?python3 manage.py makemigrations 时,在 app?migrations?目录下生成对应 sql 语句的 000*_initial.py?数据文件。

在执行 python3 manage.py migrate 时,不仅会创建 000*_initial.py 对应的数据文件,还会将这条记录数添加到据库库中。如果想重新生成数据库,需要两个地方都做删除。

二、migrate 时报错


1、把?migrations 中数据文件删除

2、删除 django_migrations 表中数据

3、重新使用?makemigrations 和?migrate 发现报错

2、经过排查,数据库中没有把旧表删除,删除后重新执行?makemigrations 和?migrate 就能成功的生成新数据表

(编辑:北几岛)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读