class Story(models.Model):
title = models.CharField(max_length=255)
alias = models.CharField(max_length=255, null=True, blank=True)
def save(self, *args, **kwargs):
if not self.alias:
self.alias = your_transliteration_function(self.title)
super().save(*args, **kwargs)
要进行实际的别名处理,您可以使用python-slugify进行翻译。这将把它变成一个URL安全的ascii版本,处理西里尔文、中文、德语等
至于如何做到这一点,你的模型,有很多方法。这里有一个使用DRF序列化程序。我建议对create和get/list等使用不同的序列化程序
可以重写model's save method:
相关问题 更多 >
编程相关推荐