解决Django 在ForeignKey中出现 non-nullable field错误的问题

yipeiwu_com6年前Python基础

在django的model中建立了如下的类

class UserType(models.Model):
 name = models.CharField(max_length=40, verbose_name=u'用户类型')
 ........
 
 def __str__(self):
 return self.name
 
 
class UserProfile(AbstractUser):
 usertype = models.ForeignKey(UserType, related_name='user_type', verbose_name=u'用户类型', on_delete=models.CASCADE)

可是在执行makemigrations时,出现“You are trying to add a non-nullable field ”的错误,提示我ForeignKey必须有一个default值。但是django里面没有要求ForeignKey必须有一个默认值。

问题的原因是原来旧的数据库文件和现在执行的操作有冲突。

解决方法是:把migrations文件夹内除了__init__.py以外的文件删除,重新执行makemigrations就可以了

以上这篇解决Django 在ForeignKey中出现 non-nullable field错误的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

对python中的 os.mkdir和os.mkdirs详解

创建目录 在Python中可以使用os.mkdir()函数创建目录(创建一级目录)。 其原型如下所示: os.mkdir(path) 其参数path 为要创建目录的路径。 例如要在...

对python3 一组数值的归一化处理方法详解

1、什么是归一化: 归一化就是把一组数(大于1)化为以1为最大值,0为最小值,其余数据按百分比计算的方法。如:1,2,3.,那归一化后就是:0,0.5,1 2、归一化步骤: 如:2,4,...

Python 3.8正式发布,来尝鲜这些新特性吧

今天 Python3.8 发布啦,它是 Python2 终结前最后一个大版本,我们一起看看这个版本都添加了那些新功能和特性。 PEP 572: Assignment Expression...

Python数据结构与算法之列表(链表,linked list)简单实现

Python 中的 list 并不是我们传统(计算机科学)意义上的列表,这也是其 append 操作会比 insert 操作效率高的原因。传统列表——通常也叫作链表(linked lis...

Appium+python自动化怎么查看程序所占端口号和IP

Appium+python自动化怎么查看程序所占端口号和IP

简介 这篇博文和分类看似没有多大关系,但是也是从上一篇衍生出来的产物,因为涉及到 FQ工具 Lantern ,就算是给关注和支持的小伙伴们拓展一下眼界和知识面。而且好多人都阅读了上一篇...