Вы расширяете BaseEntity , это не означает, что аннотация @Entity будет помещена в ваш класс сущности. он в основном используется как, например, определенные поля данных, которые вы хотите, чтобы каждый из ваших объектов имел.
его внутренняя реализация выглядит примерно так: -
// base.entity.ts
import { PrimaryGeneratedColumn, Column, UpdateDateColumn, CreateDateColumn } from 'typeorm';
export abstract class BaseEntity {
@PrimaryGeneratedColumn('uuid')
id: string;
@Column({ type: 'boolean', default: true })
isActive: boolean;
@Column({ type: 'boolean', default: false })
isArchived: boolean;
@CreateDateColumn({ type: 'timestamptz', default: () => 'CURRENT_TIMESTAMP' })
createDateTime: Date;
@Column({ type: 'varchar', length: 300 })
createdBy: string;
@UpdateDateColumn({ type: 'timestamptz', default: () => 'CURRENT_TIMESTAMP' })
lastChangedDateTime: Date;
@Column({ type: 'varchar', length: 300 })
lastChangedBy: string;
@Column({ type: 'varchar', length: 300, nullable: true })
internalComment: string | null;
}
, поэтому это сгенерирует идентификатор uuid -field и / или createDateTime-, lastChangedDateTime-fields.
Примечание: эти базовые классы должны быть абстрактными.
, поэтому вам нужно разместить аннотацию @Entity в начале каждый ваш класс Entity
также измените порядок импорта, например сначала импортируйте TypeOrmModule, а затем TaskModule.
Надеюсь, это поможет.