목록PROJECT (22)
개발일지
prisma cli 사용 시 이슈 발생prisma에서는 아래와 같이 환경변수를 불러옵니다. // schema.prismadatasource db { provider = "sqlite" url = env("DATABASE_URL") ⭐️} // .envDATABASE_URL="file:./dev.db?timeout=5000" 그런데 앞서 .env 파일을 .env.development , .env.production 으로 파일명을 변경하면서 prisma cli 사용 시 env 파일을 인식하지 못하는 문제가 발생했습니다. 이는 prisma 클라이언트는 기본적으로 .env 파일을 불러오기 때문입니다. dovenv-cli개발 환경에 따라 env 파일을 지정해주기위..
@nestjs/config보통 개발할 때와 배포할 때의 실행 환경이 달라지기 때문에 환경 변수들을 분리하여 관리할 필요가 있습니다. NestJS에서는 dotenv를 내부적으로 활용하는 @nestjs/config 패키지를 제공해줍니다. 이를 이용하여 ConfigModule을 동적으로 생성할 수 있습니다. $ yarn add @nestjs/config --save 환경 변수를 관리하는 env 파일을 생성했습니다. `.env.development` 는 개발 환경에서, `.env.production` 배포 환경에서 사용됩니다. ├── .env.development└── .env.production ConfigModule// app.module.tsimport { ConfigModu..
로그아웃플로우제가 생각한 로그아웃 플로우는 다음과 같습니다.클라이언트에서 로그아웃 api를 요청합니다.DB에 저장된 refresh token을 삭제한 후 결과를 response 합니다.삭제 성공일 경우, 헤더에 있는 access token을 제거합니다. 구현// auth/auth.controller.ts@Delete('sign-out')async signOut() { const userId = 1; const data: SignOutUserDto = { userId, }; return await this.authService.signOut(data);} // auth/auth.service.tsasync signOut(data: SignO..
작성한 투표글과 댓글 조회는 users 모듈, votes 모듈 어디에 생성할지 고민하다가 users 기능과 더 가깝다고 생각하여 users에 생성했습니다. 프로필 조회전에 만들어놓은 WhereOptionByUserId 타입을 지정하여 where 조건 객체를 생성하여 인수로 넘겨줍니다. @Control..
댓글 목록 조회투표 글을 클릭하면 그 투표글에 대한 댓글 목록을 불러올 수 있어야합니다. @Param()으로 해당 투표 글의 id를 받아옵니다. // votes/votes.controller.ts@Controller('votes/:voteId/comments')export class CommentsController { constructor( private readonly commentsReposit..
앞서 했었던 투표 글 좋아요 및 취소 구현과 구현 방식이 같으므로 설명은 생략하겠습니다. modelingmodel VoteComments { i..