这个问题可能会有点大,我会尽力解释perrty很多事情正在发生什么。下面是我的标题模型,它通过任何标题填充slug字段本身:在django slug字段中使用外语不起作用
class Heading(models.Model):
category = models.ForeignKey(Category)
title = models.CharField(max_length=5000)
content =RichTextUploadingField()
image= models.ImageField(null=True,blank=True)
date = models.DateField(default=datetime.now())
time = models.TimeField(default=datetime.now())
slug = models.SlugField(unique=True, null=True, blank=True)
def save(self, *args, **kwargs):
self.slug = slugify(self.title)
super(Heading, self).save(*args, **kwargs)
我的标题是一门外语(尼泊尔文要具体)低于 是我的管理面板的图像填满标题类
,你可以看到我的标题是外语,但我的slug字段是通过在eng中转换该标题自动填充的我不希望我的slug字段填充与我的标题字段相同的语言。我做了一些搜索,并且一个名为unidecode的模块可能是解决方案,我也尝试过使用它,但因为它的文档不好,我不能得到它的钩。因此,如果有任何其他解决方案或如何正确使用unidecode?任何形式的帮助或线索将不胜感激
这是slugify功能的文档字符串:https://github.com/django/django/blob/93452a70e8a62c7408eeded444f5088d4a26212d/django/template/defaultfilters.py#L232-L234 – allcaps
这是实际的代码:HTTPS:/ /github.com/django/django/blob/93452a70e8a62c7408eeded444f5088d4a26212d/django/utils/text.py#L413-L427。你可以直接从utils.text导入slugify并设置unicode = True。 – allcaps
de管理中的slu is是在执行保存方法时键入但被重写时由javascript计算的。 – allcaps