首页 > 解决方案 > 如何定义复杂对象的 Sequelize 模型?

问题描述

我刚开始用Sequelize,

我尝试定义一个模型,但我应该插入数据库的对象是这样的:

{
    year: 2017,
    circle1: {
      value: 50
    },
    categories: [
      {
        Title: "cat1",
        value: 4,
        maxValue: 10
      },
      {
        Title: "cat2",
        value: 2,
        maxValue: 10
      }
]
}

我试试这个

const Test = db.define(
  "test",
  {
    year: Sequelize.INTEGER,
    circle1: {
      value: Sequelize.INTEGER
    }
  },
  {
    // options
  }
)

但这是一个错误。

标签: databasesqlitesequelize.js

解决方案


如果 sqlite 支持这种类型,只需为您的复杂对象使用Sequelize.JSON类型。这样您就可以在此字段中保存任何 JS 对象。

请记住,Sequelize 或您的数据库都不会检查保存对象的结构。


推荐阅读