如何自定义 sequelize 枚举错误消息?
How to customize sequelize enum error message?
如何将此模型设置为 return 自定义错误消息,如 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"
}
}
如何将此模型设置为 return 自定义错误消息,如 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"
}
}