В настоящее время я делаю клон покемона для школьного проекта с помощью 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
//
}
Я боролся с этим весь день, поэтому, если бы кто-то мог мне помочь, это было бы удивительно.