在我的django项目中,有一个博客模型,我愿意为它的标题创建一个slug:
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
此字段必填。
难道我的代码不应该自动创建slug吗?我还有别的事要做吗?
你应该设置 blank=True 为了你的子弹场。这样,当save方法运行时,它就不需要了,并且会被设置为slagifiedtitle。
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)