【发布时间】:2022-11-14 00:31:20
【问题描述】:
我想为我使用 typeorm 创建到数据库的实体生成
但我收到这样的错误
生成一个新的迁移文件,需要执行 sql 来更新 schema
没有足够的非选项参数:得到 0,至少需要 1
注意:此命令是通过 npm 模块 'win-node-env' 运行的
npm 错误!代码生命周期
npm 错误! crud_api_reuse@0.0.1 typeorm: NODE_ENV=migration ts-node -r tsconfig-paths/register ./node_modules/typeorm/cli.js -f --config ./src/config/ormconfig.ts "migration:generate" "--name" "create_table_user"
npm 错误!退出状态 1
npm 错误!
npm 错误! crud_api_reuse@0.0.1 typeorm 脚本失败。
npm 错误!这可能不是 npm 的问题。上面可能有额外的日志输出。
npm 错误!可以在以下位置找到此运行的完整日志: npm 错误! C:\Users\jojo\AppData\Roaming\npm-cache\logs\2022-11-13T12_28_28_622Z-debug.log
在我的 ormconfig.ts 文件中,像这样
`
import * as dotenv from 'dotenv';
import { TypeOrmModuleOptions } from '@nestjs/typeorm';
dotenv.config();
const dir = process.env.NODE_ENV == 'migration' ? 'src' : 'dist';
export default <TypeOrmModuleOptions>{
type: process.env.DATABASE_CONNECTION,
host: process.env.DATABASE_HOST,
port: Number(process.env.DATABASE_PORT),
username: process.env.DATABASE_USERNAME,
password: process.env.DATABASE_PASSWORD,
database: process.env.DATABASE_NAME,
entities: [`${dir}/**/*.entity.{js,ts}`],
migrations: [`${dir}/models/migrations/*.{js,ts}`],
seeds: [`${dir}/models/migrations/seeds/*.seed.{js,ts}`],
factories: [`${dir}/models/migrations/seeds/factories/*.factory.{js,ts}`],
cli: {
migrationsDir: `${dir}/models/migrations`,
entitiesDir: `${dir}/models/entities`,
seedersDir: `${dir}/models/migrations/seeds`,
factoriesDir: `${dir}/models/migrations/seeds/factories`,
},
synchronize: false,
migrationsRun: false,
};
`
我在 package.json 文件中创建的脚本是这样的 `
"typeorm": "NODE_ENV=migration ts-node -r tsconfig-paths/register ./node_modules/typeorm/cli.js -f --config ./src/config/ormconfig.ts",
"typeorm:migration:generate": "npm run typeorm migration:generate -- --name",
"typeorm:migration:create": "npm run typeorm migration:create -- --name",
"typeorm:migration:run": "npm run typeorm migration:run",
"typeorm:migration:revert": "npm run typeorm migration:revert",
"typeorm:seed": "NODE_ENV=migration ts-node ./node_modules/typeorm-seeding/dist/cli.js --configName ./src/config/ormconfig.ts",
"typeorm:seed:run": "npm run typeorm:seed seed",
"typeorm:schema:drop": "ts-node ./node_modules/typeorm/cli.js schema:drop"
`
但是当我尝试迁移时,我收到一个类似上面的错误 那么我应该怎么做才能迁移?
【问题讨论】:
标签: postgresql migration nestjs typeorm