接口
import { Body, Controller, Get, Query } from '@nestjs/common';import { DemoService } from "./demo.service";@Controller('demo')export class DemoController { constructor( private readonly demoService: DemoService ) { } // 查找 @Get('find') async find() { return await this.demoService.findAll({name:'小明'}) } // 增加 @Get('add') async add(){ return await this.demoService.add({name:'小小',age:19}) } // 更新数据 @Get('update') async update(){ return await this.demoService.update({name:"小小"},{name:'大大'}) } // 删除数据 @Get('delete') async delete(){ return this.demoService.delete({name:"小小"}) }}
操作服务
import { Injectable } from '@nestjs/common';import { InjectModel } from "@nestjs/mongoose";// 定义传入参数的接口import {DemoInterface} from './demo.interface'@Injectable()export class DemoService { constructor( // 获取模型 @InjectModel('Demo') private readonly demoModule ) { } // 查找 async findAll(query:DemoInterface) { return await this.demoModule.find( // 只显示name query ).exec(); } // 增加 async add(query:DemoInterface){ return await this.demoModule.insertMany(query) // of 下面 const demo = new this.demoModule(query) return await demo.save() } // 更新数据 async update(query:DemoInterface,set:DemoInterface){ return await this.demoModule.update(query,set) } // 删除数据 async delete(del:DemoInterface){ return await this.demoModule.deleteOne(del) }}