我一直在可以正常工作的项目上使用Mysql和pg Typeorm和Nestjs。我决定使用mongo Atlas,我已成功连接到Atlas,没有错误,但未创建馆藏。每当我在这些步骤中使用mysql时,都会创建该表。
mongo不会发生这种情况,也许我没有做正确的事
我还安装了依赖项
npm i --save @nestjs/typeorm typeorm @types/mongodb mongodb
ormconfig.json
{
"type": "mongodb",
"url": "mongodb+srv://dbUser:<password>@<database>.mongodb.net/test?retryWrites=true&w=majority",
"useNewUrlParser": true,
"synchronize": true,
"useUnifiedTopology": true,
"logging": true,
"ssl": true,
"entities": [
"dist/**/*.entity{.ts,.js}"
]
}
app.module.ts
import { Module } from '@nestjs/common';
import { TypeOrmModule } from '@nestjs/typeorm';
import { AppController } from './app.controller';
import { AppService } from './app.service';
@Module({
imports: [TypeOrmModule.forRoot()],
controllers: [AppController],
providers: [AppService],
})
export class AppModule { }
test.entity.ts
import { Entity, Column, CreateDateColumn, ObjectIdColumn, ObjectID } from 'typeorm';
@Entity('Test')
export class TestEntity {
@ObjectIdColumn()
id: ObjectID;
@Column()
firstName: string;
@Column()
lastName: string;
@Column()
age: number;
@CreateDateColumn()
created: Date;
}
感谢您的努力
答案 0 :(得分:0)
当您尝试插入第一个文档时,将创建该集合。
另一个提示。我注意到您的实体中正在插入“ @CreateDateColumn()”。 MongoDB ObjectId包含一个时间戳,代表文档的创建日期。