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

yipeiwu_com7年前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探索之ModelForm代码详解

这是一个神奇的组件,通过名字我们可以看出来,这个组件的功能就是把model和form组合起来,对,你没猜错,相信自己的英语水平。 先来一个简单的例子来看一下这个东西怎么用: 比如我们...

Python+OpenCV目标跟踪实现基本的运动检测

Python+OpenCV目标跟踪实现基本的运动检测

目标跟踪是对摄像头视频中的移动目标进行定位的过程,有着非常广泛的应用。实时目标跟踪是许多计算机视觉应用的重要任务,如监控、基于感知的用户界面、增强现实、基于对象的视频压缩以及辅助驾驶等。...

Linux下编译安装MySQL-Python教程

1、下载mysql-python 官网地址:http://sourceforge.net/projects/mysql-python/ 2、安装mysql-python 复制代码 代码如...

python实现微信自动回复及批量添加好友功能

先给大家介绍下python微信自动回复功能 1.当收到好友消息时,自动回复 import random import itchat import requests import ti...

Python selenium的基本使用方法分析

本文实例讲述了Python selenium的基本使用方法。分享给大家供大家参考,具体如下: selenium是一个web自动化测试工具,selenium可以直接运行在浏览器上,可以接收...