为什么Nodejs将OneToOne与OneToMany序列化?



我已经创建了两个具有OneToOne关系的表父表"用户"子表userinfo

但是我可以创建任意多个子变量它们都有相同的foreignkey,它不会响应任何错误

我该怎么做才能让它停下来

这是我尝试过的:

模型/index.js

//...configs
db.users = require("./Users")(sequelize, DataTypes);
db.userinfo = require("./UserInfo")(sequelize, DataTypes);
db.users.hasOne(db.userinfo);
db.userinfo.belongsTo(db.users, {
foreignKey: {
name: "userId",
type: DataTypes.UUID,
},
});

虽然已经设置了外键,但还需要强制惟一约束。要对userinfo表中的userId外键实施唯一约束,请执行以下操作:

db.users.hasOne(db.userinfo);
db.userinfo.belongsTo(db.users, {
foreignKey: {
name: "userId",
type: DataTypes.UUID,
unique: true  // enforce unique constraint
}
});

通过设置unique: true,可以确保";user"中的每个用户表中只能有一条关联记录

相关内容

  • 没有找到相关文章

最新更新