nestjs 使用mongoose操作mongodb ,官方例子看不懂,求解释,运行起来了,不会操作

1.我现在就想用nestjs在mongodb上建库和查询,官方例子不会操作

就这样的
cats.controller.ts里的

@Controller('cats')
export class CatsController {
  constructor(private readonly catsService: CatsService) {}

  @Post()
  async create(@Body() createCatDto: CreateCatDto) {
    this.catsService.create(createCatDto);
  }

  @Get()
  async findAll(): Promise<Cat[]> {
    return this.catsService.findAll();
  }
}

cats.service.ts里的

@Component()
export class CatsService {
  constructor(
    @Inject('CatModelToken') private readonly catModel: Model<Cat>) {}

  async create(createCatDto: CreateCatDto): Promise<Cat> {
    const createdCat = new this.catModel(createCatDto);
    return await createdCat.save();
  }

  async findAll(): Promise<Cat[]> {
    return await this.catModel.find().exec();
  }
}

把服务启动后访问localhost:3000之后怎么操作

阅读 4.5k
2 个回答
@POST()
async create(@Body() createCatDto: CreateCatDto,@Response() res) {
    let catPromise = this.catsService.create(createCatDto);
    catPromise
    .then( cat=>{
      res.status(HttpStatus.OK).json(cat);//返回新创建的doc
    })
    .catch( err=>{
      res.status(HttpStatus.OK).json(err);//返回错误
    });
  }

前端发送请求,使用angularjs

cat ={name:'tom',age:1,breed:'i'm tom cat'};
$http({method:'POST', data: cat, url: nbConfig.api + '/cats'})
            .success(function(data,status,headers,config){
                if(data.ResStatus=='success'){
                    HulaNotifyService.alert('提示',data.resMsg,'关闭');
                }else{
                    HulaNotifyService.alert('提示',data.resMsg,'关闭');
                }
                
            })
新手上路,请多包涵

被@Post()修饰的 create方法 是用来创建数据的 , 具体步骤:

{
 
 "name": "name1",
 "age":  1,
 "breed": "breed1"
 
}
  1. 这个数据放在请求的body里 , 它的格式是json的
  2. 用post请求方式访问URL:http://localhost:3000/cats , 要带上数据

我刚刚成功了 , 用的工具是 postman.

被@Get()修饰的 findAll方法类似.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题