如何验证数据库字段只接受字符串? 在我的数据库中,我有两个字段: 描述:字符串 completed:布尔值 我希望描述字段只接受一个字符串值.我的意思是: ’description’:’text’=数据库
在我的数据库中,我有两个字段:
>描述:字符串
> completed:布尔值
我希望描述字段只接受一个字符串值.我的意思是:
>’description’:’text’=>数据库接受此请求
>’descrition’:真或假=>数据库拒绝此请求
>’descrition’:123 =>数据库拒绝此请求
目前,description字段可以接受布尔值,因此我的配置存在问题.
module.exports = function(sequelize, DataTypes) { return sequelize.define('todo', { description: { type: DataTypes.STRING, allowNull:false, validate: { len: [1, 250], isBoolean:false, isAlpha:true } }, completed: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: false, validate:{ isBoolean:true } } }); };您可以使用regexp验证来检查值是否为字符串,并且它的值不是true或false:
return sequelize.define('todo', { description: { type: DataTypes.STRING, allowNull:false, validate: { is: ^((?!true|false|TRUE|FALSE).){1,255}$ } }, ...
http://docs.sequelizejs.com/manual/tutorial/models-definition.html#validations