스키마 등록


cats/cats.module.ts

import { Module } from '@nestjs/common';
import { MongooseModule } from '@nestjs/mongoose';
import { CatsController } from './cats.controller';
import { Cat, CatSchema } from './cats.schema';
import { CatsService } from './cats.service';

@Module({
  imports: [MongooseModule.forFeature([{ name: Cat.name, schema: CatSchema }])], // schema 등록
  controllers: [CatsController],
  providers: [CatsService],
  exports: [CatsService],
})
export class CatsModule {}

 imports: [MongooseModule.forFeature([{ name: Cat.name, schema: CatSchema }])], // schema 등록

importsMongooseModule을 넣어줘서 스키마를 등록

DTO 정의


signup 기능에 필요한 데이터 정의 (DTO 정의)

cats/dto/cats.request.dto.ts

import { IsEmail, IsNotEmpty, IsString } from 'class-validator';

export class CatRequestDto {
  @IsEmail()
  @IsNotEmpty()
  email: string;

  @IsString()
  @IsNotEmpty()
  password: string;

  @IsString()
  @IsNotEmpty()
  name: string;
}

service 구현


실제 signup이 되게끔 코드를 작성하는 곳은 service 파트이다.

따라서 cats.service.ts 파일 안에 DB를 수정하는 코드들이 들어간다.