未处理的PromiseRejectionWarning:错误:找不到类别#产品的实体元数据



我查看了其他引发相同错误的问题,但都不适用。我尝试重命名、导入、放入配置文件,我读了一千遍typeorm文档,但找不到解决方案。有人能帮我吗?

在ormconfig.json:上

"entities": [
"./src/models/*.ts"
],

类别实体:

import {
Column,
Entity,
JoinColumn,
ManyToOne,
OneToMany,
PrimaryGeneratedColumn,
} from 'typeorm';
import Product from './Product';
import User from './User';
@Entity('categories')
class Category {
@PrimaryGeneratedColumn('uuid')
id: string;
@Column('varchar')
name: string;
@Column('varchar')
description?: string;
@ManyToOne(() => User, categories => Category)
@JoinColumn()
user: User;
@OneToMany(() => Product, product => product.category)
products: Product[];
}
export default Category;

产品实体:

import { PrimaryGeneratedColumn, Column, ManyToOne, JoinColumn } from 'typeorm';
import Category from './Category';
import Model from './Model';
import Provider from './Provider';
import User from './User';
export enum Genre {
FEMALE = 'F',
MALE = 'M',
}
export enum Size {
PP = 'PP',
P = 'P',
M = 'M',
G = 'G',
GG = 'GG',
SIZE_33 = '33',
SIZE_34 = '34',
SIZE_35 = '35',
SIZE_36 = '36',
SIZE_37 = '37',
SIZE_38 = '38',
SIZE_39 = '39',
SIZE_40 = '40',
SIZE_41 = '41',
SIZE_42 = '42',
SIZE_43 = '43',
SIZE_44 = '44',
SIZE_45 = '45',
SIZE_46 = '46',
SIZE_47 = '47',
SIZE_48 = '48',
SIZE_49 = '49',
SIZE_50 = '50',
SIZE_51 = '51',
SIZE_52 = '52',
}
export enum Status {
IN_STOCK = 'I',
OUTPUT = 'O',
}
enum Purchase_type {
CONSIGNED = 'C',
OWNER = 'O',
}
class Product {
@PrimaryGeneratedColumn('uuid')
id: string;
@Column('varchar')
name: string;
@Column('enum')
genre: Genre;
@Column('varchar')
color: string;
@Column('enum')
size: Size;
@Column('enum')
status: Status;
@Column('datetime')
created_at: Date;
@Column('varchar')
id_photo?: string;
@Column('varchar')
obs?: string;
@Column('float')
sale_value: number;
@Column('float')
purchase_value: number;
@Column('enum')
purchase_type: Purchase_type;
@Column('varchar')
brand: string;
@ManyToOne(() => User, user => user.products)
@JoinColumn()
user: User;
@ManyToOne(() => Provider, provider => provider.products)
@JoinColumn()
provider: Provider;
@ManyToOne(() => Category, category => category.products)
category: Category;
@ManyToOne(() => Model, model => model.products)
@JoinColumn()
model: Model;
}
export default Product;

错误:

(节点:10691(未处理的PromiseRejection警告:错误:找不到类别#产品的实体元数据。检查您是否指定了正确的实体对象,以及它是否在连接选项中连接。在/home/guilherme/Documentos/Restore/src/metadata-builder/EntityMetadataBuilder.ts:664:23在Array.forEach((位于EntityMetadataBuilder.computeConverseProperties(/home/guilherme/Documentos/Restore/src/metadatabuilder/EntityMetadataBuilder/ts:659:34(在/home/guilherme/Documentos/Restore/src/metadata-builder/EntityMetadataBuilder.ts:118:56在Array.forEach((位于EntityMetadataBuilder.build(/home/guilherme/Documentos/Restore/src/metadata-builder/EntityMetadataBuilder.ts:118:25(在ConnectionMetadataBuilder.buildEntityMetadata(/home/guilherme/Documentos/Restore/src/connection/ConnectionMetadataBuilder.ts:66:111(在Connection.buildMetadata(/home/guilherme/Documentos/Restore/src/Connection/Connection.ts:517:59(在Connection。(/home/guilherme/Documentos/Restore/src/connection/connection.ts:193:18(在步骤(/home/guilherme/Documentos/Restore/node_modules/tslib/tslib.js:141:27(

您似乎忘记了产品实体的实体

import { PrimaryGeneratedColumn, Column, ManyToOne, JoinColumn,  Entity } from 'typeorm';
import Category from './Category';
import Model from './Model';
import Provider from './Provider';
import User from './User';
@Entity('products') // you forget this 
class Product {
@PrimaryGeneratedColumn('uuid')
id: string;
@Column('varchar')
name: string;
@Column('enum')
genre: Genre;
@Column('varchar')
color: string;
@Column('enum')
size: Size;
@Column('enum')
status: Status;
@Column('datetime')
created_at: Date;
@Column('varchar')
id_photo?: string;
@Column('varchar')
obs?: string;
@Column('float')
sale_value: number;
@Column('float')
purchase_value: number;
@Column('enum')
purchase_type: Purchase_type;
@Column('varchar')
brand: string;
@ManyToOne(() => User, user => user.products)
@JoinColumn()
user: User;
@ManyToOne(() => Provider, provider => provider.products)
@JoinColumn()
provider: Provider;
@ManyToOne(() => Category, category => category.products)
category: Category;
@ManyToOne(() => Model, model => model.products)
@JoinColumn()
model: Model;
}
export default Product;

最新更新