在 Sequelize 中创建对象字段
Posted
技术标签:
【中文标题】在 Sequelize 中创建对象字段【英文标题】:Creating An Object Field In Sequelize 【发布时间】:2020-09-28 20:39:45 【问题描述】:我是 Sequelize 的新手,来自 MongoDB 和 mongoose,在 mongoose 架构中,您可以这样做以在架构中保存对象字段,
const userSchema = new Schema(
name: String,
age: String,
address: // this right here
)
现在我的问题是,我怎样才能在 Sequelize 中做到这一点?
【问题讨论】:
【参考方案1】:您可以在 Sequelize 中使用 JSON 数据类型的字段(这对应于 PostgreSQL 中的 JSON 数据类型)。
const User = sequelize.define('User',
name:
type: DataTypes.STRING,
allowNull: false
,
age:
type: DataTypes.STRING
,
address:
type: DataTypes.JSON
,
);
这样你就可以写到address
字段任何JS对象(包括一个数组)。
【讨论】:
速查资料:地址我建议使用新表,sequelize中使用JSON作为属性对后面的数据查询和处理不是很好。 取决于任务。如果此字段不用于排序/过滤并且可以具有相当动态的结构,那么 JSON 可能非常适合。King Etiosasere,请说明您打算如何使用此字段 这个address
字段是用来存储用户的不同地址的,除了用户编辑和更新地址信息外,几乎没有太大变化。
如果预先知道多种地址、稳定且可以搜索,那么我建议为它们使用单独的表格,正如 Alcides Bezerra 已经提到的那样以上是关于在 Sequelize 中创建对象字段的主要内容,如果未能解决你的问题,请参考以下文章