from django.db import models
from pytils.translit import slugify
class City(models.Model):
name = models.CharField(max_length=255)
slug = models.SlugField()
def save(self):
self.slug=slugify(self.name)
super(City, self).save()
Сейчас же я пользуюсь django-autoslug
from autoslug import AutoSlugField
class City(models.Model):
name = models.CharField(max_length=255)
slug = AutoSlugField(populate_from='name')
Фишка еще в том, что можно сделать так, чтобы slug был уникальным для определенных объектов.
Смотрите документацию - там подробно написано.
Рад, что пригодилось. :)
ОтветитьУдалитьautoslug использует django.template.defaultfilters.slugify а эта функция у меня не конвертит русские буквы в транслит
ОтветитьУдалитьможно ж в админке это делать, наглядно и удобно, сразу видишь получаемый результат
ОтветитьУдалить