Django中执行迁移文件时的错误:You are trying to add a non-nullable 'xxx' to project without a default;we can't

Django中在执行迁移文件时出现的错误,即当你在Pycharm下面的Terminal中输入’Python manger.py makemigrations’ 时出现以下错误:
大家可以看下这个例子
解决方法如下所述:
第一步:在Pycharm下面的Terminal窗口ctrl+c回到你的虚拟环境,在你的Pycharm右侧database中可以找到一个django_migrations文件,确切的说这是一个表,你所有的迁移记录都会显示在这个表里,如图所示:
在这里插入图片描述我这个例子是在project和user之间迁移出现的错误.在上图中我们可以看到就是最后一条记录,我们需要把这个记录删掉,操作是:选中这条记录然后点击上方的 "-"号,再点击DB按钮提交, (DB在 “-” 的右边.)

第二步:
在左边的migrations文件夹中删除你出错的的那个迁移文件,如图所示:
在这里插入图片描述
选中并Delete(删除)掉
第三步:再次回到你的数据库中(datebase)删掉生成的表,找不到的可以刷新下,在我们这个例子中是App_project和App_user
选中分别删掉就好(Drop)
在这里插入图片描述

这样才完全删除干净,然后这个时候你就可以在你的Terminal下重新进行 pyhton manger.py makemigrations 就不会报错了.

附:
python manage.py makemigrations 生成迁移文件
python manage.py migrate 执行迁移文件
init:初始化文件 同样也标志我们的app可以被引用
admin:它是我们的后台管理工具 后期我们的可以通过他管理我们的model和数据库
apps:这个是django的生成app名称的文件
models:模型文件 里面放的都是数据库表的映射
tests:测试文件
views:视图函数文件

如果帮到你的话,点个赞再走吧谢谢(!)

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值