【发布时间】:2015-08-10 22:51:34
【问题描述】:
我正在构建一个生成短 URL 的服务。我有模型:
from django.db import models
class ShortURL(models.Model):
url = models.CharField(max_length = 50)
class LongURL(models.Model):
name = models.CharField(max_length = 100, null=True)
url_to_short = models.ForeignKey(ShortURL)
我已经运行了命令:python manage.py migrate
如果我打开解释器,使用python manage.py shell 并运行以下代码:
>>> from appshort.models import LongURL
>>> a = LongURL(name = 'hello_long_link')
>>> a.save()
然后我得到错误:
django.db.utils.IntegrityError: NOT NULL constraint failed: appshort_longurl.url_to_short_id
我做错了什么?
【问题讨论】:
-
url_to_short您的模型需要 FK 字段,但您忘记填写了。 -
您创建了一个
LongURL而不给它一个ShortURL,这是一个错误。如果这是一个有效的情况,请按照此处所述将ShortURL字段设为可选:stackoverflow.com/questions/6619984/…