我有两个模型,一个是Target
,另一个是Client
,它们之间有many-to-many
的关系。
目标
@Entity()
@Unique('unique_platform_handle', ['platform', 'handle'])
export class Target {
@PrimaryGeneratedColumn('uuid')
id!: string;
@Column('enum', { name: 'target_platform', enum: TargetPlatform })
platform: TargetPlatform;
@Column()
handle: string;
@ManyToMany(() => Tag)
tags: Tag[];
@ManyToMany(() => Client, clients => clients.targets)
clients: Client[];
@CreateDateColumn()
createdAt!: Date;
@UpdateDateColumn()
updatedAt!: Date;
客户
@Entity()
export class Client {
@PrimaryGeneratedColumn('uuid')
id: string;
@Column()
name: string;
@OneToMany(() => ClientUser, clientUsers => clientUsers.client)
clientUsers: ClientUser[];
@OneToMany(() => Keywordlist, keywordlist => keywordlist.client)
keywordlist: Keywordlist[];
@ManyToMany(() => Target, targets => targets.clients, { onDelete: 'CASCADE' })
@JoinTable({ name: 'client_target' })
targets: Target[];
@OneToMany(() => Tag, tags => tags.client)
tags: Tag[];
@CreateDateColumn()
createdAt: Date;
@UpdateDateColumn()
updatedAt: Date;
现在, Typeorm 将为此名称的many-to-many relationship
创建连接表
client_target
。
现在我还有另一个表Tag
,在其中我要针对客户端添加目标,并在上面的联结表client_target
中添加条目。
所以现在我想要的是每当我从 junction tabl e中删除条目时从Tag
表中删除条目。