安装依赖
yarn add @nestjs/mongoose mongoose
配置数据库地址
在app.module中配置统一的数据库地址,也可以在其他.module中配置独立的数据库地址
// 配置数据库连接
import { MongooseModule} from '@nestjs/mongoose';
// 导入模块
import { DemoModule } from './demo/demo.module'
@Module({
// 连接mongodb数据库
imports: [
MongooseModule.forRoot('mongodb://192.168.124.15/test'),
// 引入 配置的好模块
DemoModule
]
})
配置shcema
import * as mongoose from 'mongoose';
export const DemoSchema = new mongoose.Schema({
name:{
type:String,
required:true
},
age:{
type:Number
}
})
配置服务
import { Injectable } from '@nestjs/common';
import { InjectModel } from "@nestjs/mongoose";
@Injectable()
export class DemoService {
constructor(
// 获取模型
@InjectModel('Demo') private readonly demoModule
) { }
// 数据库里面查询所有文章
async findAll() {
// 查到数据返回
return await this.demoModule.find().exec();
}
}
接口
import { Controller, Get } from '@nestjs/common';
import { DemoService } from "./demo.service";
@Controller('demo')
export class DemoController {
constructor(
private readonly demoService: DemoService
) { }
@Get()
async index() {
return await this.demoService.findAll()
}
}