Как переопределить стандартный slug страницы wagtail
Я пытаюсь сделать страницы с трясогузкой для астролога на основе категории, страны и города. И мои url'ы таковы:
https//localhost:8080/<category>
https//localhost:8080/<category>/<country>
https//localhost:8080/<category><country>/<city>
Если я пытаюсь сохранить url с '/' прямым слешем, то он удаляет '/' из slug и сохраняет его как строку.
Ex: <category><country>/<city> to categorycountrycity
Возможно ли переопределить тип slug страницы по умолчанию 'SlugField' на 'CharField'. или есть какое-либо другое решение?
URL жестко привязаны к дереву страниц, и slug - это только часть, которая идентифицирует страницу на данном уровне, а не на родительских уровнях. Таким образом, если вам нужен https://localhost:8080/<category>/<country>/<city>
, вам понадобится:
- Страница по адресу
https://localhost:8080/<category>/
, slug которой - просто название категории - У страницы вышеуказанной категории будет дочерняя страница, slug которой будет только названием страны (что даст ей URL
https://localhost:8080/<category>/<country>/
) - Страница страны должна иметь дочернюю страницу со slug только названия города (что даст ей URL
https://localhost:8080/<category>/<country>/<city>
).
Нужны другие города, сделайте больше дочерних страниц на странице "страна". Нужно больше стран, сделайте больше дочерних страниц на странице "категория". Нужно больше категорий, сделайте больше дочерних страниц под корневой страницей.