Приветствую!
Как правильно организовать роутинг в Django?
Есть таблица с категориями (id, name, parent_id, slug) и таблица со страницами (id, name, category_id, slug).
Категории имеют произвольный уровень вложенности. При формировании ссылки получается что-то вроде: site.ru/category/category-lvl-1/category-lvl2/some-page
Действия:
- Распарсить url по / . Получить list('category', 'category-lvl-1', 'category-lvl2', 'some-page')
- По последнему элементу списка делать запрос к таблице страниц.
- Если есть, достать страницу с таким slug. По оставшимся сделать выборку из категорий.
- Если такой страницы нет, сделать выборку по всем элементам из категорий.
- Если такие категории есть, сопоставить порядок по parent_id.
- Если нет ошибок вывести категорию/страницу, в противном случае - 404.
Я правильно понимаю порядок дейтсвий или в Django есть способ сделать проще?