inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

탄탄한 백엔드 NestJS, 기초부터 심화까지

회원가입 서비스 개발 & DTO 패턴

mongodb에서 Auto_incement 기능을 사용할수 있는 방법이 있나요?

1665

이두영

작성한 질문수 2

1

저는 이번 강의로 mongoose는 처음 이용해 보는데요.

DB 의 _id 값에 SQL의 Auto_increment 이용하듯이 Int 타입으로 값을 넣고 싶은데요 어떻게 해야 하나요?

express로 설계할 때에는 추가적으로 Collection을 만들고 거기에서 DB에 입력할때 값을 받아오고 숫자를 늘려주는 방법으로 했었는데요.. Nest로  설계하기는 약간 복잡한거 같아서 질문드립니다.

nestjs mongodb mongoose express nodejs ssr NestJS

답변 1

0

윤상석

안녕하세요! 이두영님 :)

우선 특수 목적을 제외하면, mongodb의 _id는 분산 확장 등을 고려하여 설계되어 있기 때문에 mongodb에서는 _id 값을 ObjectId 타입을 권장드립니다. 

auto_increment 관련해서 좋은 포스팅 소개합니다. https://wjdtn7823.tistory.com/59

특수 목적으로 사용하신다면, 말씀하신대로 수동으로 값을 읽고 늘려줘도 되지만 관련해서 라이브러리(플러그인)을 사용하시는 것을 권장드립니다! https://github.com/ramiel/mongoose-sequence

https://stackoverflow.com/questions/62824276/auto-increment-sequence-in-nestjs-mongoose

라이브러리 사용말고 pre 메서드를 사용해서도 해결하셔도 됩니다.

https://mongoosejs.com/docs/middleware.html#pre

추가적인 질문 있으시면 답글 주세요!

 

프로젝트 환경 세팅할 때 최신 노드 버젼을 사용하시는 분들은 참고하셔도 좋을 것 같아요~

2

80

1

DTO에 대한 질문

1

87

2

백엔드 MVC에서 View의 역할은 무엇인가요?

1

93

2

추가 업데이트 관련 건

0

90

2

nest js 버전문제

0

79

2

mongdb 스키마 공식 문서와 형태가 다른 이유 궁금합니다.

0

103

1

라인 끝에 에러 표시(eslint) 때문에 구글 찾아 보니.

0

74

1

전체 고양이 조회 라우터 중 error.message 오류

0

67

1

캡슐화 추가 설명 중 단일책임원칙 관련 질문

0

104

0

TypeORM과 mysql을 사용하시는 분들

4

140

1

42강 고양이끼리 소통 댓글 구현 중 Schema hasn't been registered for model 'comments' 에러 해결

0

82

1

채팅 이슈

0

133

1

모듈이 더 이상 지원하지 않는답니다

0

206

1

오류가 있습니다

0

106

1

import 에서 오류가 납니다

0

127

1

이런 오류가 나옵니다

0

100

1

에러가 발생합니다

0

109

1

프론트 에러 뜨는데 수정 안해주시나요

0

156

1

emit() broadcast.emit() 질문있습니다

0

101

1

서버연결이 안됩니다.

1

403

1

[PM2][ERROR] Command not found

0

520

1

S3에 업로드까지는 성공했는데 사진이 나오지 않습니다.

0

248

1

error_code : Property 'user' does not exist on type 'Request<ParamsDictionary, any, any, ParsedQs, Record<string, any>>'.ts(2339)

0

601

1

jwt를 따로 연습하고 있는데 env를 못읽는 것 같습니다.

0

322

2