【发布时间】:2015-03-17 19:39:16
【问题描述】:
我向现有模型添加了一个新字段。当我使用命令“manage.py makemigrations myapp”时,出现以下错误:
You are trying to add a non-nullable field 'slug' to post without a default. we can not do that < the database needs something to populate existing rows>.
新字段 slug 的默认值应该是多少?这是我的模型:
class Post(models.Model):
title = models.CharField(max_length = 100, null = False, blank = False)
body = models.TextField()
dateCreated = models.DateTimeField(default=datetime.now, blank=True)
slug = models.SlugField(unique = True)
def __str__(self):
return self.title
【问题讨论】:
-
这是正常行为...
-
@mevius 但我的模型没有更新
-
@Alexander 这样想——它如何更新?除了 None/NULL 之外,脚本可能决定在这个新字段中放入什么?你说这是不允许的(它既是唯一的约束又是不可为空的)。