我有一个自引用关系(不重要)
export default class Person{
@PrimaryKey
@Column
public id!: number;
@BelongsTo(() => Person, "parent_id")
parent!: Person;
@HasMany(() => Person, "parent_id")
children!: Person;
}
当我同步时,sequelize 自动创建外键关系
我不想这样做,因为数据不完整,而且有些人的父母可能不在数据库中。 我如何防止续集默认生成
<块引用>默认情况下,将生成belongsTo 关系的外键 来自目标模型名称和目标主键名称。
答案 0 :(得分:0)
只是一个想法。 实施:
@HasMany(() => Person, "parent_id")
children!: Person;
不是使用 sequelize-typescript,而是使用核心 https://sequelize.org/master/manual/typescript.html 可以完成这项工作。只是不要在模型中实现外键,而只是为打字稿编译器实现。
使用约束:false,将阻止外键创建。 不知道能不能在sequelize-typescript包中实现