【发布时间】:2014-09-26 08:38:10
【问题描述】:
我被困住了。 Django 1.7,SQLite3。
我已更改模型以添加thumbnail 列,如this tutorial。是这样的:
from django.db import models
class Article(models.Model):
title = models.CharField(max_length=200)
body = models.TextField()
pub_date = models.DateTimeField('date published')
likes = models.IntegerField(default=0)
def __str__(self):
return self.title
现在是这样的:
from django.db import models
from time import time
def get_upload_file_name(instance, filename):
return "uploaded_files/%s_%s" % (str(time()).replace(".", "_"), filename)
class Article(models.Model):
title = models.CharField(max_length=200)
body = models.TextField()
pub_date = models.DateTimeField('date published')
likes = models.IntegerField(default=0)
thumbnail = models.FileField(upload_to=get_upload_file_name, null=True)
def __str__(self):
return self.title
我用
将所有数据备份到一个 json 文本文件python manage.py dumpdata article --indent=4 > article.json
然后执行
python manage.py makemigrations
这很有效。但是
python manage.py migrate
失败
django.db.utils.IntegrityError: NOT NULL constraint failed: article_article__new.thumbnail
现在,即使将null=True 添加到models.py 的thumbnail 行,运行makemigrations 也会成功,而migrate 会以同样的方式失败。
我该怎么办?
【问题讨论】: