Я пытаюсь настроить Typeorm на стороннем проекте со следующим js и Typescript. Пока мне удалось создать объект и выполнить миграцию в моей базе данных. Но когда я пытаюсь создать экземпляр построителя запросов с моей сущностью, выдается эта ошибка:
TypeError: Class constructor Build cannot be invoked without 'new'
at SelectQueryBuilder.QueryBuilder.createFromAlias (/Users/sanghin/workspace/siosa/src/query-builder/QueryBuilder.ts:552:67)
at SelectQueryBuilder.from (/Users/sanghin/workspace/siosa/src/query-builder/SelectQueryBuilder.ts:199:32)
at Search (webpack-internal:///./pages/api/search.ts:10:121)
at apiResolver (/Users/sanghin/workspace/siosa/node_modules/next/next-server/server/api-utils.ts:72:11)
at processTicksAndRejections (internal/process/task_queues.js:97:5)
at DevServer.handleApiRequest (/Users/sanghin/workspace/siosa/node_modules/next/next-server/server/next-server.ts:726:5)
at Object.fn (/Users/sanghin/workspace/siosa/node_modules/next/next-server/server/next-server.ts:605:27)
at Router.execute (/Users/sanghin/workspace/siosa/node_modules/next/next-server/server/router.ts:222:24)
at DevServer.run (/Users/sanghin/workspace/siosa/node_modules/next/next-server/server/next-server.ts:793:23)
at DevServer.handleRequest (/Users/sanghin/workspace/siosa/node_modules/next/next-server/server/next-server.ts:280:14)
Моя сущность
import {
Entity,
PrimaryGeneratedColumn,
Column,
CreateDateColumn,
UpdateDateColumn,
DeleteDateColumn,
VersionColumn,
} from "typeorm";
@Entity()
export default class Build {
@PrimaryGeneratedColumn()
id: number;
@CreateDateColumn()
createdAt: number;
@UpdateDateColumn()
updatedAt: number;
@DeleteDateColumn()
deletedAt: number;
@VersionColumn()
version: number;
@Column({ type: "jsonb" })
build: Build;
}
Построитель запросов
import { getConnection } from "typeorm";
import Build from "../../server/entity/Build";
const qb = await getConnection()
.createQueryBuilder()
.select("build")
.from(Build, "build");
Вы можете найти проект здесь