【发布时间】:2021-04-17 08:19:45
【问题描述】:
我查看了引发相同错误的其他问题,但没有一个对我有用。我尝试重命名、导入、放入配置文件,我阅读了 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)UnhandledPromiseRejectionWarning:错误:未找到 Category#products 的实体元数据。检查您是否指定了正确的实体对象,以及它是否在连接选项中连接。 在 /home/guilherme/Documentos/Restore/src/metadata-builder/EntityMetadataBuilder.ts:664:23 在 Array.forEach () 在 EntityMetadataBuilder.computeInverseProperties (/home/guilherme/Documentos/Restore/src/metadata-builder/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.buildEntityMetadatas (/home/guilherme/Documentos/Restore/src/connection/ConnectionMetadataBuilder.ts:66:111) 在 Connection.buildMetadatas (/home/guilherme/Documentos/Restore/src/connection/Connection.ts:517:59) 在连接处。 (/home/guilherme/Documentos/Restore/src/connection/Connection.ts:193:18) 在步骤 (/home/guilherme/Documentos/Restore/node_modules/tslib/tslib.js:141:27)
【问题讨论】: