gpt4 book ai didi

sequelize.js - 防止 sequelize 默认在belongsTo 关联上生成外键

转载 作者:行者123 更新时间:2023-12-03 22:32:03 25 4
gpt4 key购买 nike

我有一个自我参照关系(不重要)

export default class Person{
@PrimaryKey
@Column
public id!: number;

@BelongsTo(() => Person, "parent_id")
parent!: Person;

@HasMany(() => Person, "parent_id")
children!: Person;

}
当我同步时,sequelize 会自动创建外键关系
我不希望它这样做,因为数据不完整,有些人的 parent 可能不在数据库中。
我如何 阻止 sequelize 默认生成

By default the foreign key for a belongsTo relation will be generatedfrom the target model name and the target primary key name.

最佳答案

只是一个想法。
实现:

@HasMany(() => Person, "parent_id")
children!: Person;
不是使用 sequelize-typescript,而是使用核心 https://sequelize.org/master/manual/typescript.html 可以完成这项工作。只是不要在模型中实现外键,而只是为 typescript 编译器实现。
使用约束:false,将阻止外键创建。
不知道能不能在sequelize-typescript包中实现

关于sequelize.js - 防止 sequelize 默认在belongsTo 关联上生成外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66071872/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com