Вы не можете переключиться на какое-то другое поле, кроме слаг.Поле slug используется во всем Wagtail для поиска URL-адресов, запросов и предоставления правильной страницы.
Вы можете программно установить значение slug на что-то другое.Определение Page.slug:
slug = models.SlugField(
verbose_name=_('slug'),
allow_unicode=True,
max_length=255,
help_text=_("The name of the page as it will appear in URLs e.g
http://example.com/blog/[my-slug]/")
)
Поле принимает символы в кодировке Unicode.
Вы должны переопределить Page._get_autogenerated_slug
, Page.full_clean
и Page.clean
.Измените способ обработки slug и примите его по своему усмотрению.
Обратите внимание, что вы можете использовать другое поле, например my_custom_slug
, в качестве ввода и использовать это значение в своих пользовательских методах.Например: self.my_custom_slug
.Однако окончательный результат должен быть сохранен в поле slug.
Вы можете удалить поле slug из панелей содержимого, чтобы удалить его из пользовательского интерфейса администратора.
Наконец, slug имеетсоблюдать https://tools.ietf.org/html/rfc1738