Как сделать вывод меню в интернет-магазине?

Здравствуйте!
Пишу для себя велосипед(интернет-магазин) на node.js и mongodb (mongoose).
Но появился вопрос по работе с деревом категорий.
Сейчас есть такая структура:
var CategorySchema = new Schema({
    name: String,
    slug: String,
    text: String,
    parentSlug: {type: String, default: ""},
    ancestry: {type:[String], default: []} // предки для получения полного урла категории и хлебных крошек
});


вложенность будет 4-5 максимум.

Задача: вывод меню как на kosi-pili.ru (самое меню - 1ый уровень вложенности, а при наведении мыши - выводятся 2 и 3).

Как это лучше сделать?
Минус данной структуры, что для сбора дерева потребуется рекурсия в базу, что не подходит (кол-во всех разделов около 300 - очень большой оверхед). Да и асинхронная рекурсия то еще удовольствие...
  • Вопрос задан
  • 259 просмотров
Пригласить эксперта
Ответы на вопрос 1
@lega
для сбора дерева потребуется рекурсия в базу

Держите список (всех) предков в дочерних элементах, тогда рекурсии не нужны.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы