gpt4 book ai didi

sequelize.js - Sequelize 允许用户输入 "null",即使使用 allowNull : false

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

我有一个行程模型

var Itinerary = sequelize.define('Itinerary', {
title: {
type: DataTypes.STRING,
allowNull: false,
validate: {
notEmpty: true
}
}
})

这可以防止空输入,但如果我输入“null”,它仍然会添加到我的数据库中。阅读文档,看起来应该可以防止这种情况发生?难道我做错了什么?

最佳答案

Sequelize(和 db)将“null”解释为有效字符串。

itinerary.title ='null'; 

不同于:
itinerary.title = null;

如果您愿意,您可以向模型添加一个额外的验证方法来查找此字符串 null。
var Itinerary = sequelize.define('Itinerary', {
title: {
type: DataTypes.STRING,
allowNull: false,
nullorEmpty: function() {
if (!this.title || (this.title === 'null') {
throw new Error('title must be set')
}
}
}
})

关于sequelize.js - Sequelize 允许用户输入 "null",即使使用 allowNull : false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36381362/

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