Node.js 如何在sequelizejs中创建具有关联的模型实例?

Node.js 如何在sequelizejs中创建具有关联的模型实例?,node.js,postgresql,orm,sequelize.js,Node.js,Postgresql,Orm,Sequelize.js,我想从原始json数据创建具有it关联的持久模型 var data = { id: 77 name: "Fred" parent_id: 887 parent: { id: 887, name: "Ted" things: [ { id:991, name: "some", parent_id: 887 }, { id:992, name: "another", parent

我想从原始json数据创建具有it关联的持久模型

var data = {
    id: 77
    name: "Fred"

    parent_id: 887
    parent: {
       id: 887,
       name: "Ted"  

       things: [
          { id:991, name: "some", parent_id: 887 },
          { id:992, name: "another", parent_id: 887 },
          { id:993, name: "cu", parent_id: 887 }
       ]
    }


}
我简化了我的数据(我在模型中有很多关联,在关联的子模型中有一些关联)

我尝试使用Model.create(数据、选项) 使用options.include:[子模型]但它不起作用。它只在数据库中创建带有主模型的行
忽略子模型就我所知,基于现有数据创建模型实例的唯一方法是使用函数。但使用相关的模型实例创建模型实例也有点棘手

因此,解决方案(基于JSON数据)更像

const thingsData =  [
  { id:991, name: "some", parent_id: 887 },
  { id:992, name: "another", parent_id: 887 },
  { id:993, name: "cu", parent_id: 887 }
]

const things = ThingsModel.build(thingsData) // this will be an array of ThingsModel instance

const parentData = {
  id: 887,
  name: "Ted"
}

const parent = ParentModel.build(parentData)

// manually injecting the things instances
parent.dataValues.things = things

const personData = {
  id: 77,
  name: "Fred",
  parent_id: 887
}

const person = PersonModel.build(data)

person.dataValues.parent = parent