我在我的应用程序中使用sequelize。我有postgres作为底层数据库。 但是当我试图保存实例时,我得到了以下错误
[错误:缺少尺寸值]
我有以下型号
module.exports = function(sequelize, DataTypes) {
var Mymodel = sequelize.define('Mymodel', {
id: {type : DataTypes.INTEGER, autoIncrement : true, primaryKey: true},
title: {
type: DataTypes.STRING(128),
validate: {
notNull: true,
notEmpty: true
}
},
tags: DataTypes.ARRAY(DataTypes.TEXT)
});
return Mymodel;
}
我发送http post请求
{
"title":"Test challenge",
"tags" : "['JAVA','REST','API']"
}
我正在保存像这样的对象
Mymodel.create(model).success(function(model) {
callback(null, challenge);
}).error(function(err) {
callback(err, null);
});
答案 0 :(得分:1)
我尝试按照您的说法发送您的模型对象,但确实收到错误SequelizeValidationError: "['JAVA','REST','API']" is not a valid array
。也许你在旧版Sequelize上遇到了不同的错误。然后,我确保tags
值是JavaScript数组而不是字符串,并且它起作用。
Mymodel.create({
title: 'Test challenge',
tags: ['JAVA','REST','API']
}).then(function() {});