我已经异步加载了Typeorm app.module.ts:
TypeOrmModule.forRootAsync({ inject: [ConfigService], useFactory: getTypeormConfig}), typeorm.config.ts: export const getTypeormConfig = async (config: ConfigService) => ({ type: 'postgres' as const, host: config.get<string>('TYPEORM_HOST'), port: config.get<number>('TYPEORM_PORT'), password: config.get<string>('TYPEORM_PASSWORD'), ....typeORM文档似乎已经过时了,就像他们说的::https://wanago.io/2022/07/25/api-nestjs-database-migrations-typeorm/
我正试着效仿这个例子。在项目的根部为CLI迁移创建了单独的第二个配置:
import { BusinessLog } from 'src/yandex-ndd-api-client/entity/business-log.entity';
import { ClientStatus } from 'src/yandex-ndd-api-client/entity/client-status.entity';
import { Item } from 'src/yandex-ndd-api-client/entity/item.entity'; ...
export default new DataSource({
type: 'postgres' as const,
host: 'postgres', port: 5432, username: 'postgres', database: 'childrensworld',
subscribers: [TruckSubscriber, RequestSubscriber],
entities: [ Request, Item, BusinessLog, Place, ClientStatus, ....我还在package.json中写道:
"typeorm": "ts-node ./node_modules/typeorm/cli", "typeorm:run-migrations": "npm run typeorm migration:run -- -d ./typeorm-migration.config.ts", "typeorm:generate-migration": "npm run typeorm -- -d ./typeorm-migration.config.ts migration:generate ./migrations/test_migration_name", "typeorm:create-migration": "npm run typeorm -- migration:create ./migrations/test_migration_name", "typeorm:revert-migration": "npm run typeorm -- -d ./typeorm-migration.config.ts migration:revert"启动npm运行typeorm:generate name=CreatePost,如示例和get: Error在迁移过程中的运行: Error:无法打开文件:"E:\Programming\Nodejs\..........\typeorm-migration.config.ts". Cannot find module 'src/yandex-ndd-api-client/entity/business-log.entity' Require stack: - E:\Programming\Nodejs\LandPro\сhildsworld\Projects\tests\test_migrationTypeOrm\typeorm-migration.config.ts
就好像它不能读取Typeorm-移行.config.ts中的实体一样,这个例子说明不了这一点。也许这个配置是用于CLI迁移的(typeorm-移入.config.ts),您需要在其他地方连接吗?
发布于 2022-11-03 14:20:50
这是我们的打字机。你可能需要-r tsconfig-paths/register。
typeorm": "ts-node --transpile-only -r tsconfig-paths/register ./node_modules/typeorm/cli.js --dataSource src/typeorm/typeorm.config.ts",https://stackoverflow.com/questions/73617151
复制相似问题