我正在制作一个假的网上银行网站。我尝试在某部分上遇到麻烦,因此每个用户可以使用belongsTo方法拥有多个帐户。我是用来存放用户外部ID的帐户表。
这是用户模型
module.exports = function (sequelize, DataTypes) {
var User = sequelize.define("User", {
firstName: {type:DataTypes.STRING, allowNull:false},
lastName: {type:DataTypes.STRING, allowNull:false},
addressLine1: {type:DataTypes.STRING, allowNull:false},
addressLine2: {type:DataTypes.STRING, defaultValue: "Null"},
city: {type:DataTypes.STRING, allowNull:false},
state: {type:DataTypes.STRING, allowNull:false},
zip: {type:DataTypes.INTEGER, allowNull:false},
SSN:{type:DataTypes.STRING, allowNull: false},
DOB: {type:DataTypes.STRING, allowNull:false},
email: {type:DataTypes.STRING, allowNull:false},
username: {type:DataTypes.STRING, allowNull:false},
// acctNoCHK: {type:DataTypes.INTEGER, unique:true},
// acctNoSAV: {type:DataTypes.INTEGER, unique:true}
});
User.associate = function (models) {
User.hasMany(models.Account, {
onDelete: "cascade"
});
};
return User;
};
这是帐户模型
module.exports = function(sequelize, DataTypes) {
var Account = sequelize.define("Account", {
type: {type:DataTypes.STRING, allowNull:false},
balance: {type:DataTypes.STRING, allowNull:false},
isOpen: {type:DataTypes.BOOLEAN, allowNull:false}
});
Account.associate = function(models) {
Account.belongsTo(models.User, {
foreignKey: "UserId", targetKey: "id"
});
};
return Account;
};
我到底在做什么错???帐户中的UserId列始终显示为Null。谢谢您的帮助!
答案 0 :(得分:0)
var Account = sequelize.define("Account", {
type: {type:DataTypes.STRING, allowNull:false},
balance: {type:DataTypes.STRING, allowNull:false},
isOpen: {type:DataTypes.BOOLEAN, allowNull:false},
userId: {type: DataTypes.INTEGER } // need userId in Account
});
const { id } = await Uesr.create({ ... });
await Account.create({ ... , userId: id});// we need save userId