상점별 리뷰 갯수 카운팅

keep_going·2023년 3월 31일
0

문제해결

목록 보기
1/36

리뷰 갯수를 상점별로 카운팅 하려면

  1. 리뷰 데이터에서 상점별 아이디(bakery_id)별로 sorting
    -> 어차피 빵집 상세페이지에 들어가면 그 빵집 1개의 데이터만 조회하기 때문에 sorting따로 안해도 됨
  2. 데이터 갯수를 counting
    -> 데이터가 입력될때마다 증가시켜서 counting 할 경우 리뷰를 삭제할 경우 감소된 값으로 counting이 안됨
    -> 아예 데이터 갯수를 셀수 있는 method가 있나?
    -> 삭제시 데이터 변화는 vue에서 computed나 watch로 ...?
  • 문제
    데이터의 갯수를 어떻게 셀것인가?
  • 해결
    MongoDB에서 countDocuments() 메서드를 사용
    컬렉션에서 특정 쿼리 조건을 만족하는 문서의 수를 계산할 수 있다.
db명.컬렉션명.countDocuments({
  $nor: [{ deleted: true }], // 제외할 조건
  status: "active", // 가져올 조건
})

이렇게 쓰려면 db와 컬렉션을 따로 정의해야 해서 귀찮..
모델로 가져올수 있다.

모델명.countDocuments({
  $nor: [{ deleted: true }], // 제외할 조건
  status: "active", // 가져올 조건
})
profile
keep going

0개의 댓글