如何在TypeORM中创建具有静态值的连接列?

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

我正在尝试在 TypeORM 中建立多态关系,我需要在其中设置自定义连接列。具体来说,我想使用两列:

record_id
record_type
record_type
列中的值应该是常量并与父实体的名称匹配。

以下是相关代码片段:

@Entity({ name: 'attachments' })
export class Attachment {
  ...

  @ManyToOne(() => Advertisement, (advertisement) => advertisement.attachments)
  @JoinColumn([
    { name: 'record_id', referencedColumnName: 'id' },
    { name: 'record_type', value: 'Advertisement' },
  ])
  advertisement: Advertisement

  @ManyToOne(() => Blog, (blog) => blog.attachments)
  @JoinColumn([
    { name: 'record_id', referencedColumnName: 'id' },
    { name: 'record_type', value: 'Blog' },
  ])
  blog: Blog
}

这里的挑战是 TypeORM 不直接支持

@JoinColumn
的静态值。因此,语法
{ name: 'record_type', value: 'Blog' }
是不正确的。是否有任何解决方法可以解决此限制?非常感谢您的见解。

谢谢你。

node.js nestjs typeorm
1个回答
-1
投票

@OULAHTAK 您找到解决方法了吗? 我也面临着同样的问题。

PS:我没有足够的声誉来发表评论:(

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