【问题标题】:TypeORM 0.2.21: Cannot read property 'build' of undefinedTypeORM 0.2.21:无法读取未定义的属性“构建”
【发布时间】:2020-04-04 18:01:33
【问题描述】:

我不确定为什么每次尝试与数据库同步时都会收到以下错误。

Error during schema synchronization:
TypeError: Cannot read property 'build' of undefined
    at /Users/geekox86/Documents/GitHub/OE Scoring/src/metadata-builder/EntityMetadataBuilder.ts:594:66
    at Array.forEach (<anonymous>)
    at EntityMetadataBuilder.computeEntityMetadataStep2 (/Users/geekox86/Documents/GitHub/OE Scoring/src/metadata-builder/EntityMetadataBuilder.ts:594:37)
    at /Users/geekox86/Documents/GitHub/OE Scoring/src/metadata-builder/EntityMetadataBuilder.ts:113:56
    at Array.forEach (<anonymous>)
    at EntityMetadataBuilder.build (/Users/geekox86/Documents/GitHub/OE Scoring/src/metadata-builder/EntityMetadataBuilder.ts:113:25)
    at ConnectionMetadataBuilder.buildEntityMetadatas (/Users/geekox86/Documents/GitHub/OE Scoring/src/connection/ConnectionMetadataBuilder.ts:66:111)
    at Connection.buildMetadatas (/Users/geekox86/Documents/GitHub/OE Scoring/src/connection/Connection.ts:516:59)
    at Connection.<anonymous> (/Users/geekox86/Documents/GitHub/OE Scoring/src/connection/Connection.ts:191:18)
    at step (/Users/geekox86/Documents/GitHub/OE Scoring/node_modules/tslib/tslib.js:136:27)

Reproduction repo

【问题讨论】:

    标签: typescript typeorm


    【解决方案1】:

    typeorm 试图调用的方法是build from typeorm/src/metadata-builder/EntityMetadataBuilder.ts 并有下一个签名:

    build(entityClasses?: Function[]): EntityMetadata[]) {}

    它的作用是为给定的实体类构建完整的实体元数据,并为表继承计算父实体元数据。

    这告诉我,您尝试创建实体之间关系的方式有问题。您可能需要通过暂时删除关系来逐一检查关系,直到找到造成问题的关系。

    【讨论】:

    • 我在类继承链中间缺少一个抽象类的@ChildEntity
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-02-27
    • 2021-05-29
    • 1970-01-01
    • 2019-07-27
    • 2021-07-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多