【发布时间】:2015-01-28 13:26:15
【问题描述】:
我正在阅读本教程以了解 django 的基础知识,但我遇到了一个我无法解决的问题。
我在这个页面http://www.tangowithdjango.com/book17/chapters/models_templates.html 使用 sluglify 函数方法。
在教程中作者说我们必须在我们的类别模型中为 th slugfield 创建一个新行。就像我在这里展示的那样,我严格遵循所有步骤:
from django.db import models
from django.template.defaultfilters import slugify
class Category(models.Model):
name = models.CharField(max_length=128, unique=True)
likes = models.IntegerField(default=0)
views = models.IntegerField(default=0)
slug = models.SlugField(unique=True)
def __unicode__(self):
return self.name
class Page(models.Model):
category = models.ForeignKey(Category)
title = models.CharField(max_length=128)
url = models.URLField()
views = models.IntegerField(default=0)
def __unicode__(self):
return self.title
当我运行“makemgiration”命令时,一切都按预期工作:我选择第一个选项并提供''。但是当我运行“迁移”时,我得到:
django.db.utils.Integrity 错误:Slug 列不是唯一的
这里发生了什么?我已经重复了几次迁移并尝试了其他默认代码,但结局相同。我无法弄清楚我做错了什么。他们唯一剩下的就是我给了别的东西而不是''(首先我以为他们是''或')。
感谢您的宝贵时间和帮助!
【问题讨论】: