search
menu
person

NEWS AND UDATES


13:13
Django url неограниченной вложенности
На данный момент найдено 4 часто встречающихся способа как сделать url неограниченной вложенности на django.

1) Псевдо url с помощью сохранения полного пути.
Пояснение.
Допустим у нас есть url вида

wd5.ru/django/blog/test/test1

Просто в одно из полей таблицы при сохранении заносим полный путь. В url разрешаем регулярным выражением любые символы. Если путь есть в базе данных выводим таблицу. Если нет, 404 ошибку.

Пример: https://groups.google.com/forum/?fromgroups=#!topic/django-users/ylc32kbhFFE

Минусы - слишком многое разрешено, нужно еще одно поле под адрес. Хотя по сути это все мелочи.

2) Рекурсивный разбор url
Смысл в том, что получив путь мы разбиваем его по знаку / и запрашиваем в базе данных значения проверяя путь

Примеры:
  • http://djangosnippets.org/snippets/362/
  • http://stackoverflow.com/questions/9492190/django-categories-sub-categories-and-sub-sub-categories
  • http://softwaremaniacs.org/forum/django/23350/

Минусы - сложнее отлавливать ошибки, дополнительная нагрузка, хотя и не большая.

3) А не сделать ли нам вид что они неограниченны
Когда изначально известно что разделов не много и требуется только перенос сайта на django с минимальными корректировками - просто имитируем поведение старого движка.

4) А не пошли бы все дружно со своей старой схемой.
Радикальная методика большинства студий при разработке. Делаем новую схему удобную нам. Создаем еще одно приложение целью которого будет 301 редирект со старой схемы на новую.

5) ...
Просмотров: 665 | Добавил: django | Рейтинг: 0.0/0
Всего комментариев: 0
dth="100%" cellspacing="1" cellpadding="2" class="commTable">
Имя *: Email:
Код *: