我有一个网络应用程序,我写了一个迁移器来创建我所有的表和关系,最近无论我怎么尝试,typeorm似乎找不到这个迁移器,因此,不运行它。
我的文件结构(仅迁移)
src〉数据库〉迁移〉1663525805095-添加用户. ts,1663529676790-使研究所可为空.ts
标准配置ts
import { DataSource } from 'typeorm';
import { ConfigService } from '@nestjs/config';
import { config } from 'dotenv';
config();
const configService = new ConfigService();
const source = new DataSource({
type: 'postgres',
host: configService.get('POSTGRES_HOST'),
port: configService.get('POSTGRES_PORT'),
username: configService.get('POSTGRES_USER'),
password: configService.get('POSTGRES_PASSWORD'),
database: configService.get('POSTGRES_DB'),
synchronize: false,
logging: false,
migrations: ['src/database/migrations/*.ts'],
migrationsTableName: 'migrations',
entities: ['src/**/*.entity.ts'],
});
export default source;
为了运行这个命令,我输入yarn start:dev
来启动我的服务器,然后运行yarn migrations:run
,得到:
query: SELECT * FROM current_schema()
query: SELECT version();
query: SELECT * FROM "information_schema"."tables" WHERE "table_schema" = 'public' AND "table_name" = 'migrations'
query: CREATE TABLE "migrations" ("id" SERIAL NOT NULL, "timestamp" bigint NOT NULL, "name" character varying NOT NULL, CONSTRAINT "PK_8c82d7f526340ab734260ea46be" PRIMARY KEY ("id"))
query: SELECT * FROM "migrations" "migrations" ORDER BY "id" DESC
No migrations are pending
当我查看我的数据库时,我看到一个没有条目的migrations
表。
我曾尝试删除我的迁移程序文件,并使用更近的时间戳重新创建它,但也不起作用。
我的包中的脚本.json"migrations:run": "yarn typeorm migration:run"
"typeorm": "typeorm-ts-node-commonjs -d ./ormconfig.ts"
"start:dev": "nest start --watch"
其他信息我正在使用docker的postgres数据库和pgAdmin,它连接没有问题。任何帮助将不胜感激。
1条答案
按热度按时间y4ekin9u1#
尝试
并记住在生成迁移之前进行构建