I'm trying to execute a insert, and sequelize is executing the insert twice.
First insert: only with userid, updatedAt, createdAt,
Second Insert: the other fields
Console Result
#Insert car: {"name":"CarTest","description":"desc","myNumber":123,"id":"","UserId":1}
Executing (undefined): INSERT INTO `Cars` (`UserId`,`updatedAt`,`createdAt`) VALUES (1,'2014-09-17 22:31:49','2014-09-17 22:31:49');
Executing (undefined): INSERT INTO `Cars` (`id`,`name`,`description`,`myNumber`,`createdAt`,`updatedAt`,`UserId`) VALUES (DEFAULT,'CarTest','desc',123,'2014-09-17 22:31:49','2014-09-17 22:31:49',1);
saved: {"name":"CarTest","description":"desc","myNumber":123,"id":39,"UserId":1,"updatedAt":"2014-09-17T22:31:49.000Z","createdAt":"2014-09-17T22:31:49.000Z"}
My model Car.js
module.exports = function(sequelize, DataTypes) {
var Car = sequelize.define('Car', {
name: {
type: DataTypes.STRING,
},
description: {
type: DataTypes.STRING,
},
myNumber: {
type: DataTypes.BIGINT,
},
},{
classMethods: {
associate: function(models) {
Car.belongsTo(models.User,{ foreignKeyConstraint: true})
}
}
});
return Car;
};
My controller
var mycar = db.Car.build(req.body);
mycar.setUser(req.user);
console.log("#Insert car: "+ JSON.stringify(mycar));
mycar.save().success(function(entity) {
res.json(entity);
console.log("saved: "+ JSON.stringify(entity));
}).error(function(error){
console.log("error: "+ error);
});
package.json
"mysql": "^2.5.0",
"connect-session-sequelize": "^2.0.0",
What I'm doing wrong? Why is sequelize executing the save in separated inserts?