在 TypeORM 和 NodeJS 中连接表

Dev*_*ine 5 javascript mean node.js typescript typeorm

我创建了 TypeORM 实体类别和子类别

类别.ts

@Entity()
export class Category {

  @PrimaryGeneratedColumn()
  id: number;

  @Column()
  name: string;

  @Column()
  description: string;

  @OneToMany(() => Subcategory, (subcategory) => subcategory.category)
  public Subcategories: Subcategory[];

  @OneToMany(() => Item, (item) => item.category)
  public Items: Item[];

}
Run Code Online (Sandbox Code Playgroud)

子类别.ts

import {
  Entity,
  PrimaryGeneratedColumn,
  Column,
  ManyToOne,
  OneToMany,
  CreateDateColumn,
  UpdateDateColumn
} from "typeorm";
import {Category} from "./Category";
import {Item} from "./Item";

@Entity()
export class Subcategory {

  @PrimaryGeneratedColumn()
  id: number;

  @Column()
  name: string;

  @Column()
  description: string;

  @ManyToOne(() => Category, (category) => category.Subcategories)
  public category: Category;

  @OneToMany(() => Item, (item) => item.subcategory)
  public Items: Item[];

}
Run Code Online (Sandbox Code Playgroud)

在 TypeScript 上获取类别查询:

await getRepository(Category).find();
Run Code Online (Sandbox Code Playgroud)

问题:

我无法在网上找到一种方法将子类别包含到 getCategory 查询中,我只是执行一个简单的连接,它将获得所有类别及其子类别。在实体框架中,我习惯于使用 Category.Includes(Subcategories) 之类的东西,它可以完成这项工作。

是否有任何简单/简单的方法来连接 TypeORM/NodeJS 中的表?

非常感谢您花时间阅读我的问题,我很感激!

Dev*_*ine 8

在查找了不同的教程后,我发现这种方式非常适合我的需要:

const categories = await getRepository(Category).find({relations: ['Subcategories']});
Run Code Online (Sandbox Code Playgroud)