gpt4 book ai didi

node.js - 如何自定义 sequelize 枚举错误消息?

转载 作者:行者123 更新时间:2023-12-03 22:18:21 24 4
gpt4 key购买 nike

如何设置此模型以返回自定义错误消息,例如 Jamaica is not a valid input for enum 而不是标准错误消息?我发现像 this 这样的解决方案只适用于 DATATYPES.STRING 但我需要一些适用的东西
这是模型:

module.exports = (sequelize, DataTypes) => {
const Country = sequelize.define("Countries", {
nameOfCountry: {
type: DataTypes.ENUM(
"Nigeria",
"Ethiopia",
),
allowNull: false,
}),
});

最佳答案

您可以添加自定义错误消息和验证,如 sequelize 文档中所示
您必须创建自定义 sequelize validate 函数,或者您可以传递参数

module.exports = (sequelize, DataTypes) => {
const Country = sequelize.define("Countries", {
nameOfCountry: {
type: DataTypes.ENUM(
"Nigeria",
"Ethiopia",
),
allowNull: false,
validate: {
customValidator(value) {
if (value !== "Nigeria" || value !== "Ethiopia") {
throw new Error("error msg you want to write");
}
}
}
},
});

如果您不想使用自定义验证,您可以使用它
  validate: {
isIn: {
args: [['Nigeria', 'Ethiopia']],
msg: "Must be Nigeria or Ethiopia"
}
}

关于node.js - 如何自定义 sequelize 枚举错误消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64289145/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com