gpt4 book ai didi

typescript - 如何在 TypeORM 的一对多关系中只引用一个实体

转载 作者:行者123 更新时间:2023-12-05 05:47:07 25 4
gpt4 key购买 nike

我想知道在一对多关系中仅引用一个相关实体而不是所有实体的最佳方式是什么。

例如,假设我有一个用户,它可以有多张照片。我希望每张照片都与用户相关,但从用户的角度来看,我只关心一张特定的照片(例如最后上传的一张照片)。

一种方法是:

@Entity()
export class User {
@PrimaryGeneratedColumn()
id: number;

@Column()
currentPhotoId: number;

async getCurrentPhoto(): Photo {
...
}

...
}

@Entity()
export class Photo {
@PrimaryGeneratedColumn()
id: number;

@ManyToOne(() => User, user => user.photos)
user: User;

...
}

但是,有没有一种 TypeORM 方式可以做这样的事情?例如,如果它是一个急切的解决方案并且不需要另一个异步操作来获取相关实体,那就太好了。
我可能不是第一个提出这个要求的人,但我还没有找到任何东西,也许我没有正确搜索。

最佳答案

我认为 currentPhotoId 应该是 oneToOnePhoto 的关系,并且在更新照片时,应该更新此 ID。因为这样业务逻辑和数据库模式将被正确分离。

关于typescript - 如何在 TypeORM 的一对多关系中只引用一个实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71062479/

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