Я слежу за документацией от TypeORM напрямую здесь.
Сущность и отношения, которые я пытаюсь создать, следующие:
@Entity({name: "reports"})
export class ReportsEntity {
@PrimaryGeneratedColumn('uuid')
uuid: string;
@PrimaryColumn()
@ManyToOne(() => ApplicationsEntity, (application) => application.reports)
application: ApplicationsEntity
@Column()
description: string
@Column({ type: 'timestamp' })
@CreateDateColumn()
createdAt: Date;
@Column({ type: 'timestamp' })
@UpdateDateColumn()
updatedAt: Date;
}
@Entity({name: "applications"})
export class ApplicationsEntity {
@PrimaryGeneratedColumn('uuid')
uuid: string;
@Column()
name: string;
@Column()
description: string;
@Column({ type: 'timestamp' })
@CreateDateColumn()
createdAt: Date;
@Column({ type: 'timestamp' })
@UpdateDateColumn()
updatedAt: Date;
//Relationships
@OneToMany(() => ReportsEntity, (report) => report.application)
reports: ReportsEntity[]
}
Однако при запуске я получаю следующую ошибку от MySQL:
Data type "Object" in "ReportsEntity.application" is not supported by "mysql" database.
Я не вижу, что я упустил или что я делаю неправильно, когда просматриваю и сравниваю документацию.
удалите @PrimaryColumn() над @ManyToOne, потому что он пытается создать столбец с объектом типа данных «ApplicationsEntity», который не поддерживается mysql
ОтчетыОбъект
@ManyToOne(() => ApplicationsEntity, (application) => application.reports)
application: ApplicationsEntity
ПриложенияСущность
@OneToMany(() => ReportsEntity, (report) => report.application)
reports: ReportsEntity[]