stweet
@stweet
Java, Php, Js

SequelizeJs как реализовать древовидный вывод?

Час добрый и сразу к сути.

Допустим есть список комбинаций в базе:
combs -> [id:1, name:'noname', weight:100500]
combs -> [id:2, name:'noname', weight:100500]
combs -> [id:3, name:'noname', weight:100500]

и есть конфигурационный список:
conf -> [id:1, name:'noname', combs:[1, 2, 3]]
conf -> [id:2, name:'noname', combs:[3, 4, 5]]
conf -> [id:3, name:'noname', combs:[3, 1, 4]]

суть идеи, вытащить конфигурации с уже заполненными комбинациями, пример:
confModel.findAll( ).then(function(items:any):any {
    var tree = items.map(function(item:any):any {
        return item.get({plain: true});
    });
    console.log(tree);
    // [{
    // id:1,
    // name:'noname',
    // combs:[
    //     {id:1, weight:100500},
    //     {id:2, weight:100500},
    //     {id:3, weight:100500}
    // },{
    // id:2,
    // name:'noname',
    // combs:[
    //     {id:3, weight:100500},
    //     {id:4, weight:100500},
    //     {id:5, weight:100500}
    // }];
});

Заранее спасибо!
  • Вопрос задан
  • 156 просмотров
Пригласить эксперта
Ответы на вопрос 2
stweet
@stweet Автор вопроса
Java, Php, Js
В php всё проще, ибо юзает базу синхронно.
Тут же необходимо реализовать связи.

Методы: hasMany не подходит ибо детище JOIN.
А тут надо при каждом проходе делать повторный запрос но уже к таблице "combs".
Ответ написан
Комментировать
@LiguidCool
Ну раз вложенности нет, то просто обходите массив и подставляйте значения :)
Ответ написан
Ваш ответ на вопрос

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

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