Переопределить Django Slug

У меня есть блог в wagtail. В модели Wagtail по умолчанию Page уже определено поле slug. Полный пример здесь

slug = models.SlugField(
        verbose_name=_("slug"),

У меня есть подкласс AddStory класса Page, поэтому я не могу определить slug там. И я получаю ошибку столкновения.

Проблема:

Поле slug автоматически генерирует slug из заголовка. Таким образом, есть некоторые виды событий, название которых всегда будет одинаковым. Например Jokes of the day, Поэтому первые 10 или 20 дней, редакторы будут знать, что они добавили 20 постов с day_1,day_2... в конце slug, а когда количество дней увеличится, они не смогут вспомнить, сколько они ввели?

Вероятное решение

Итак, если я могу автоматизировать slug, как он будет генерировать slug из случайных id или строк, и он будет уникальным.

Я попробовал это в подклассе AddStory

def pre_save(self):
    def randomid1(self):
        return(get_random_string(length=10))
    self.slug = randomid1

Как я могу определить, что он не будет генерировать slug из заголовка, вместо этого он будет генерировать slug из заданных случайных строк?

Вернуться на верх