Django SlugField“此字段为必填”错误

时间:2018-11-10 08:18:33

标签: django slugify

在我的django项目中,有一个Blog模型,我愿意为其标题创建一个条目:

class Blog(models.Model):
    title = models.CharField(default='', max_length=100, verbose_name=u'عنوان')
    slug = models.SlugField(max_length=100, allow_unicode=True)
    # other stuffs
    def save(self, *args, **kwargs):
        self.slug = slugify(self.title, allow_unicode=True)
        super(Blog, self).save(*args, **kwargs)

    def __str__(self):
        return self.slug

在django管理员中,我没有填写子弹字段,当我点击保存按钮时,它说:

  

此字段为必填项。

我的代码不是应该自动创建子弹吗?还有什么我应该做的?

1 个答案:

答案 0 :(得分:1)

您应该为子弹字段设置blank=True。这样,将不再需要它,并且将在保存方法运行时将其设置为小标题。

class Blog(models.Model):
    title = models.CharField(default='', max_length=100, verbose_name=u'عنوان')
    slug = models.SlugField(max_length=100, allow_unicode=True, blank=True)