Поле Slug не работает для бенгальского языка в django. Как работать с полем slug на бенгальском языке
Поле slug в Django не работает ни для какого другого языка, кроме английского. Я хочу работать с бенгальским языком вот код
class Post(models.Model):
title = models.CharField(max_length=140)
category = models.ForeignKey(Category, on_delete=models.DO_NOTHING)
content = RichTextField(default="")
image = models.ImageField(upload_to="media/post")
url = models.SlugField(unique=True, max_length=250, null=True, blank=True)
likes = models.IntegerField(default=0)
created_date = models.DateTimeField(auto_now_add=True)
update_at = models.DateTimeField(auto_now=True)
def __str__(self):
return f"{self.title}"
def save(self, *args, **kwargs): # new
if not self.url:
slug_str = f"{self.title}-{datetime.datetime.now()}"
self.url = slugify(slug_str)
return super().save(*args, **kwargs)
Передайте allow_unicode=True в ваш SlugField
для принятия символов юникода
class Post(models.Model):
...
url = models.SlugField(allow_unicode=True, unique=True, max_length=250, null=True, blank=True)
Затем при генерации slug вам нужно передать тот же параметр
def save(self, *args, **kwargs): # new
if not self.url:
slug_str = f"{self.title}-{datetime.datetime.now()}"
self.url = slugify(slug_str, allow_unicode=True)
return super().save(*args, **kwargs)