为什么TypeORM要求提供OneToMany的反面,却不要求提供ManyToOne的反面?

以下引文摘自TypeORM docs

  如果没有@ManyToOne,

@OneToMany将不存在。如果要使用@OneToMany,则需要@ManyToOne。但是,并不需要相反:如果您只关心@ManyToOne关系,则可以定义它而无需在相关实体上使用@OneToMany。设置@ManyToOne的位置-它的相关实体将具有“关系ID”和外键。

为什么需要提供OneToMany的反面而不是ManyToOne?

aiai0525 回答:为什么TypeORM要求提供OneToMany的反面,却不要求提供ManyToOne的反面?

这是因为ManyToOne将外键放在当前实体表中,所以对于SQL表定义的生成是必要的。毕竟,这只是一个SQL列,最后是一个外键,TypeOrm需要一个实体定义,该定义才能使其正确生成SQL语句。

TypeOrm需要知道外键在哪里生成列表的获取SQL查询,因此需要ManyToOne映射。如果未定义OneToMany,则不会获取任何内容,因此也可以使用。

本文链接:https://www.f2er.com/3069472.html

大家都在问