Bạn có thể làm điều này bằng một trong hai cách. Như bạn đã lưu ý, bạn có thể tạo một trình kích hoạt trong chính cơ sở dữ liệu. Bạn có thể chạy một truy vấn kích thước phần tiếp theo thô để thực hiện điều này:
sequelize.query('CREATE TRIGGER create_config AFTER INSERT ON users' +
' FOR EACH ROW' +
' BEGIN' +
' insert into configs (UserId) values(new.id);' +
'END;')
Hoặc, bạn có thể tạo hook
trên mô hình người dùng thực hiện một hành động trên afterCreate
sự kiện:
module.exports = function(sequelize, DataTypes) {
var User = sequelize.define('User', {
name : DataTypes.STRING(255),
email : DataTypes.STRING(255),
username : DataTypes.STRING(45),
password : DataTypes.STRING(100),
}, {
classMethods : {
associate : function(models) {
User.hasOne(models.Config)
}
},
hooks: {
afterCreate: function(user, options) {
models.Config.create({
UserId: user.id
})
}
}
});
return User;
};