Django Slugs并重新定义保存方法

时间:2019-05-29 07:38:38

标签: python django django-models

因此,我找到了一个代码,将代码添加到名为Product的模型实例中。但是我的问题来自save()函数。我无法理解具有super(文章,自我)部分的含义。

class Product(models.Model):
   title = models.CharField(max_length=100)
   description = models.TextField()
   price = models.DecimalField(decimal_places=2, max_digits=20, 
   default=39.99)
   image = models.ImageField(upload_to="products/", blank=True, null=True)
   slug = models.SlugField(unique=True)

   def __str__(self):
       return self.title

   def save(self, *args, **kwargs):
       self.slug = slugify(self.title)
       super(Product, self).save(*args, **kwargs)

1 个答案:

答案 0 :(得分:0)

您必须调用超类保存方法,并且代码应为:

super(Product, self).save(*args, **kwargs)

请不要复制粘贴代码:)