我有一个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
您需要将转换器(更新程序)写入迁移文件(在正向情况下)。如果你想的话,你可以实现倒向case
这里的例子http://concentricsky.com/blog/2014/jan/data-migrations-south-and-django
相关问题 更多 >
编程相关推荐