TypeORM 级联:为什么为 true 不会删除相关实体

问题描述 投票:0回答:1

我知道这个问题已经被问过,实际上我和这篇文章的作者有完全相同的问题:TypeORM 级联:true 标志不会删除相关实体

然而,答案并不令人满意

TypeORM 的文档在这个问题上很清楚(尽可能清楚):https://orkhan.gitbook.io/typeorm/docs/relations#cascades TypeORM 的级联应该与 DBAL 级联选项的工作方式相同,只是它是从关系的另一端触发的,并且是在软件级别而不是 DBAL 级别上触发的。我希望在尝试删除父实体之前使用

cascade: ['remove']
选项删除子实体

就我而言,依赖 DBAL 选项而不是 TypeORM 的选项是不可能的,因为我在某些时候需要 TypeORM 的事件侦听器(显然它们不是由 onCascade: DELETE 触发的)

有人知道吗?

postgresql typeorm node.js-typeorm
1个回答
0
投票

就我而言,我确实喜欢这样:

  @ManyToOne(() => Invoice, (invoice) => invoice.invoice_details, {
    onDelete: 'CASCADE', 
  })
  @JoinColumn({ name: 'invoice_id' })
  invoice: Invoice;

invoice_id删除后会自动删除

© www.soinside.com 2019 - 2024. All rights reserved.