Мне нужно добавить поле slug в модель django, и я считаю, что лучше, когда оно не равно null. Итак, я пытаюсь добавить слаг в модель
slug = models.SlugField(
'URL',
unique=True,
default=id_generator,
)
мой id_generator:
import string
import random
def id_generator():
size=16
chars=string.ascii_lowercase + string.digits
return ''.join(random.choice(chars) for x in range(size))
Проблема в том, что когда я переношу изменения. Метод id_generator вызывается один раз и использует одно и то же значение для всех объектов модели. Итак, у меня есть повторяющаяся запись в уникальном поле. Как я могу генерировать уникальные значения? Джанго 1.11.5
P.S. Я понимаю, что я могу установить null = True и настроить метод сохранения модели, чтобы добавить слаг при сохранении.