inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

mongoDB 기초부터 실무까지(feat. Node.js)

POST /comment

모델 설정 질문입니다

171

jjongrrr

작성한 질문수 26

0

안녕하세요 

수업 잘 보고 있습니다

 

질문1)

자꾸 아이디 중복된다고 떠서 한참을 헤매다가 왜 그런지 찾았는데 ...

제가 모델 설정할때 requied: true 주고 첫 게시물을 만들면 소스상에서 삭제하고 데이터를 다시 보내도 디비서버엔 바뀌지 않더라구요 ..게시물을 삭제해도 ... 결국엔 comments 자체를 날려버리니 잘 되는데 

모델 설정을 다 하고 디비서버에 저장된 것들은 소스상에서 수정하고 디비서버에 적용이 불가능할까요 ? 

-----

질문2)

코멘트같은 하위 모델은 어떻게 하는게 더 빠르게 조회할까요 ? 

1. 모든 코멘트에서 조회해서 가져오기 

const findOneComment = await Comment.findOne({_id: commentId})

2. 조건을 두개로 나눠서 조회해서 가져오기  

const findOneComment = await Comment.findOne({ $and: [ {blog: blogId}, {_id: commentId}] })

nodejs rest-api mongodb DBMS/RDBMS javascript aws 데이터 엔지니어링

답변 1

1

김시훈 (도도소프트)

1) 음 혹시 unique: true로 적용했던 필드가 있지 않았나요? unique index를 생성하거든요. 그러면 중복된 필드가 있을 때 저런 오류 처리가 나옵니다. 한번 생성된 인덱스를 삭제하고 싶으시면 MongoDB Compass에 들어가서 하시면 되요. 들어가서 해당 Collection -> Indexes -> 잘못된 인덱스 삭제

2) 사실상 차이 없습니다. index가 걸려 있는 필드로 탐색하느냐 안하느냐가 중요한데 _id는 기본설정으로 인덱스가 걸려 있고 보여주신 두 쿼리 모두 _id 탐색이 포함되어 있어서 둘 다 빠릅니다.

0

jjongrrr

넵 답변 감사합니다 ~

unique가 걸려있었네요 ㅎㅎ 

option usecreateindex is not supported 오류 나면은

0

162

1

Schemaless 특성을 재생시 검은화면이 나와요

0

258

1

user 내장 시 ref 필드 필요성

0

256

1

await 관련해서 질문드릴게 있습니다!!

0

306

2

섹션6의 3번째 강의 faker파일이 어디있나요?

0

320

1

$elemMatch 질문이 있습니다.

0

251

1

DB 업데이트에 실패했을 상황에서 대처는 어떻게 할 수 있나요.

2

777

2

블로그에 user 데이터를 추가하는 방법에 대해서

0

243

1

blog 데이터 생성시 user 관련 오류

0

363

1

age 예외 처리를 별도로 하신 이유가 궁금합니다.

2

312

2

delete 메소드가 많은 이유가 궁금합니다.

0

185

1

unique validation 처리

0

302

1

updateMany에서 user._id를 못찾는 상황

1

402

1

find() 가 리턴하는 instance member

1

438

3

몽고 db를 백업방법을 부탁합니다.

0

610

1

인덱스 생성시점

0

720

1

$pull 문법에 대한 질문

0

366

1

comment의 id가 생성되는 시점

1

310

1

리팩토링 강의에서 라우터 리팩토링 전개연산자(...)

1

321

1

session.abortTransaction()에 대한 실제 예시 문의

0

296

1

섹션9 Computed Fields 강의에서, 다음 강의 가기 전 빠진부분

-1

413

1

faker 패키지 취약성 이슈

1

496

1

라우터 리팩토링

0

348

1

섹션4 진행중, mongoose 질문

0

316

1