pizgin
цитировать
Зарегистрирован: 03 Июл 2008 21:53:50 Сообщения: 8
|
Добавлено: 14 Авг 2008 10:38:24 Заголовок сообщения: Давайте обсудим как можно организовать приоткрытое дерево? |
|
|
Hi! Давайте обсудим как можно организовать приоткрытое дерево наподобии как на ozon.ru (меню слева). Сейчас использую nested sets и класс TreeBehaviour (cake 1.2).
Допустим есть такое дерево:
Код: | Книги (1,28) [1]
- Автомобили (2,17) [2]
---- Москвич (3,8) [5]
------ 2141 (4,5) [8]
------ 412 (6,7) [9]
---- ВАЗ (9,14) [6]
------ 2106 (10,11) [10]
------ 2109 (12,13) [11]
---- ГАЗ (15,16) [7]
- Программирование (18,25) [3]
-- PHP (19,22) [12]
---- Patterns (20,21) [14]
-- Ruby (23,24) [13]
- Цветы (26,27) [4] |
В круглых скобках номера узлов (left,right), в квадратных id.
В принципе проблем сначала и не видно. Выбирай по left и right. Но...
Вот задача:
Допустим мы вычислили что сейчас пользователь находиться на странице про девятки "ВАЗ 2109". Id этого раздела 11, левый узел 12, правый 13. Выборка будет такой: все элементы у которых left<=12 и right >=13. Получим путь до самого верха, но туда не будут входить все остальные.
Получим: 2109, ВАЗ, Автомобили, Книги.
А как получить все остальное?
P.S. Вообще может сначала с алгоритма начнем? Т.е. как вообще решать задачу с таким меню? |
|