Как выполнить запрос sequelize, где модель имеет связь один ко многим, с одной моделью

const Categories = sequelize.define("categories",{
    id:{type: DataTypes.INTEGER, autoIncrement:true,primaryKey:true},
    name:{type: DataTypes.STRING, unique:true},
    slug:{type: DataTypes.STRING, unique:true}
})

Categories.hasMany(Categories)
Categories.belongsTo(Categories)

Запрос

    async fetchAllCategory(req,res,next) {
        
        const data = await Categories.findAll();
        
        console.log(data)
    }

ответ

[
 {
   id:1,
   name: xxx,
   categoriesId:2
 },
 {
   id:2,
   name: aaaa,
   categoriesId: null
 }
]

Какой результат ожидаю:

Категория 1 (parrent)

  • категория 3 (child)
  • категория 4 (child)

Категория 5 (parrent)

  • категория 6 (child)

Чтобы данные вернулись со вложенностью. Сейчас я просто получаю массив обьектов с категориями. Как мне сделать запрос?

Я пробовал через include подключать модель, как это указано в документации. Но получаю ошибку, что нельзя подключать модель дважды в одном запросе.

{all:true}

Возвращает мне такую же ошибку.


Ответы (0 шт):