module.exports = function (sequelize, Sequelize) {
var User = sequelize.define('user', {
id: { autoIncrement: true, primaryKey: true, type: Sequelize.INTEGER },
firstname: { type: Sequelize.STRING, notEmpty: true },
lastname: { type: Sequelize.STRING, notEmpty: true },
//username: { type: Sequelize.TEXT },
//about: { type: Sequelize.TEXT },
mobileno: { type: Sequelize.STRING },
email: { type: Sequelize.STRING, validate: { isEmail: true } },
password: { type: Sequelize.STRING, allowNull: false },
last_login: { type: Sequelize.DATE },
//status: { type: Sequelize.ENUM('active', 'inactive'), defaultValue: 'active' }
});
return User;
}
其他的一切都发布得很好,但是
mobileno
在数据库中被发布为null
。我试着将mobile no设置为
allowNull = false
,但这给了我一个错误。我也试着把字符串改成文本,但也没用…
这是添加allownull=false之后的eroor。
最佳答案
你的问题在于你的数据而不是你的续集模型
基于您的问题,我认为您发送了mobileno
字段的空值
关于AllowNull
参数:当您将设置为false时,这意味着如果您不传递参数(在您的情况下会发生这种情况),sequelize将返回错误。
默认情况下AllowNull
值为true
我的建议是在插入查询之前检查您的数据,当您使用sequelize检查控制台运行create命令时,它将显示您插入到sql格式