使用 sequelize-typescript 指定 null 列的正确方法是什么?

What is the correct way to specify a null column with sequelize-typescript?

提问人:Matt 提问时间:2/16/2021 更新时间:3/26/2022 访问量:1048

问:

我看不到任何关于如何在 中指定 NULL 列的 javascript 类型的文档。sequelize-typescript

例如(默认值为):@ColumnallowNULL=true

@Column
my_property?: string | null
my_other_property: string | null

两者都会导致以下错误。Specified type of property 'my_property' cannot be automatically resolved to a sequelize data type

是我做错了什么,还是正确的方式:

@Column
my_property?: string

在这种情况下,当数据库值为 NULL 时,ORM 会返回什么?是否成为或?my_propertynullundefined

任何提示都是值得赞赏的。

打字稿 续集.js

评论


答:

0赞 MBer 3/26/2022 #1

第一种方法是正确的,并且适用于某些列 [email protected].该错误是因为您没有指定列数据类型,并且有多个列类型可以对应于 JS 类型,并且回退代码无法选择一个。我建议始终指定列的数据类型以明确这一点:nullstring

@Column({ type: DataType.STRING })
my_property?: string | null