我创建了两个模型,分别是用户和客户。客户应至少有一个用户。因此,我与他们两个都建立了关系。请查看下面的模型。
'use strict';
module.exports = (sequelize, DataTypes) => {
const customers = sequelize.define('customers', {
name: DataTypes.STRING,
email: DataTypes.STRING
}, {});
customers.associate = function(models) {
customers.belongsTo(models.user);
};
return customers;
};
'use strict';
module.exports = (sequelize, DataTypes) => {
const user = sequelize.define('user', {
name: DataTypes.STRING,
email: DataTypes.STRING,
phone: DataTypes.STRING,
}, {
underscored:true
});
user.associate = function(models) {
user.hasOne(models.customers, { foreignKey: "user_id", sourceKey: "id", as: 'customers'});
};
return user;
};
我正在尝试插入如下数据。
var data = {
"name": "deve1",
"email": "rnd@gmail.com",
"phone": "123456789",
"customers" : {
"name": "customer",
"email": "rnd@gmail.com"
}
}
models.user.create(data, {
include : [ models.customers ]
}).then((data) => {
res.json(data);
})
它不起作用。但是,如果我在数据中使用而不是“客户”,则工作正常。我找不到问题所在。
请任何人帮助解决此问题