Как идти по поводу множества при использовании основного и дополнительного слота - PullRequest
0 голосов
/ 22 октября 2018

В настоящее время я делаю клон покемона для школьного проекта с помощью typeORM, и я хочу добавить типы к своей сущности покемона, создав отдельную таблицу типов и включив в нее слот primaryType и secondType.

@Entity()
export class Pokemon extends BaseEntity {
  @PrimaryColumn()
  id: number;

  @Column()
  name: string;

  @JoinColumn()
  @OneToOne(type => Pokemon_Types)
  types: Pokemon_Types;

  @JoinColumn()
  @OneToOne(type => Stats)
  stats: Stats;

  @OneToOne(type => Pokemon_Moves)
  @JoinColumn()
  moves: Pokemon_Moves;
}

@Entity()
export class Pokemon_Types extends BaseEntity {
  @OneToOne(type => Pokemon)
  @PrimaryGeneratedColumn()
  id: number;

  @JoinColumn()
  // what should I put here
  @OneToOne(type => Type)
  primary_type: Type | string;

  @JoinColumn()
  // what should I put here
  @OneToOne(type => Type)
  secondary_type: Type | string;
}

@Entity()
export class Type extends BaseEntity {
  // one of my 100 attempts
  @OneToMany(
    type => Pokemon_Types,
    name => {
      return name.primary_type, name.secondary_type;
    }
  )
  @PrimaryColumn("text", { nullable: false })
  name: string;

  @Column("integer", { nullable: false })
  normal_multiplier: number;

//
//      more type multipliers
//

}

Я боролся с этим весь день, поэтому, если бы кто-то мог мне помочь, это было бы удивительно.

...