Django Slug油田仅在新模型制作时生成,而不是老模型移植时生成

2024-05-19 11:31:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个django模型对象,它有一个slug字段,但是这个slug只在创建模型时设置一次。问题是,我已经从没有slug字段的应用程序的早期版本迁移了这些模型的大型数据库,因此slug字段现在在所有旧对象上都为空。如何重写模型或视图的任何部分,以自动填充所有旧模型对象的slug字段,而不仅仅是正在创建的新模型对象?你知道吗

class NewLink(models.Model):
     newlinktag = models.ForeignKey('pageinfo', related_name='newlink_newlinktag') #tags link to which username it belongs to
     linkcomment = models.CharField(max_length=512) #comment to go along with post
     url = models.URLField(max_length = 1024) #actual submitted link, need max length so we don't get hacked
     slug = models.SlugField(('slug'), max_length=512, blank=True)

    def save(self, *args, **kwargs):
         self.slug = slugify(self.linkcomment)
         super(newlink, self).save(*args, **kwargs)

     def __unicode__(self):
         return self.url

Tags: to对象模型selfurlmodelssavedef

热门问题