首页 > 解决方案 > Typeorm急切加载不适用于一对一关系

问题描述

我们可以在 typeORM 中急切地加载一个一对一相关的实体吗?我在 Nestjs 中使用 TypeOrm。两个 One-to_One 相关的实体是 driver 和 job:

在驱动程序实体中:

  @OneToOne(() => JobEntity, job => job.current_driver)
  @JoinColumn({ name: 'current_job_id', referencedColumnName: 'job_id' })
  current_job: JobEntity

在工作实体中:

  @ApiProperty({ type: Number, example: 29 })
  @OneToOne(() => DriverEntity, driver => driver.current_job, { nullable: true, cascade: true })
  @JoinColumn({ name: 'current_driver_id', referencedColumnName: 'driver_id' })
  current_driver: DriverEntity;

我试图访问双方都急切加载的实体,但它在任何一方都不起作用。

标签: node.jsnestjstypeormnode-mysqlnode.js-typeorm

解决方案


您可以使用

  @OneToOne(() => JobEntity, job => job.current_driver)
  @JoinColumn({ name: 'current_job_id', referencedColumnName: 'job_id' , eager: true})
  current_job: JobEntity

真实你的渴望


推荐阅读