• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 Node.js, Express 게시판 findOne 으로 더 깊은위치의 데이터 탐색방법....

findOne 으로 더 깊은위치의 데이터 탐색방법....

5 글 보임 - 1 에서 5 까지 (총 5 중에서)
  • 글쓴이
  • #60137

    매우초보
    참가자
    몽고DB에 캡쳐와 같은 객체 데이터를 넣어놨습니다
    여기서 name : outer1 인 데이터를 서버에서 findOne 으로 찾으려면 어떤 문법을 사용해야 하나요?
    저는 캡쳐와 같은 문법으로 탐색하려했지만 null 이 출력 되더라구요
    혹시 이렇게 더 깊은 위치에 있는 데이터를 찾는 문법이 있나요?
    
    
    
    
    
    데이터구조는 이렇습니다
    
    {
      "_id":10,
      "outer": [
        {
          "name": "outer1",
          "price": 128000,
          "like": 0,
          "sale": {
            "percentage": 40,
            "timeSale": "2023.12.31"
          }
        },
        {
          "name": "outer2",
          "price": 128000,
          "like": 0,
          "sale": {
            "percentage": 0,
            "timeSale": ""
          }
        },
        {
          "name": "outer3",
          "price": 128000,
          "like": 0,
          "sale": {
            "percentage": 0,
            "timeSale": ""
          }
        },
        {
          "name": "outer4",
          "price": 128000,
          "like": 0,
          "sale": {
            "percentage": 0,
            "timeSale": ""
          }
        }
      ]
    }
    #60157

    codingapple
    키 마스터
    _id : 10인거 찾아와서 첫째항목만 출력해서 씁시다
    #60176

    매우초보
    참가자
    
    
    저 name : outer1 에 해당하는 데이터만 수정해서 db에 보내는 방법은 없습니까?
    만약 데이터를 수정했다면 db에 보낼때는 수정한 부분만 업데이트 할수있는게 아니라
    
    수정된 데이터를 포함하는 전체 데이터를 (_id:10인 객체) 전부 전송해서 업데이트하는 방법밖에 없나요?
    
    원래 node.js express 에서 객체 데이터를 탐색할수 있는 범위는 객체는 가장 상위객체의 키값 까지인가요?
    
    예를 들어 
    data = {
     name : outer1,
     option : {
      기모 : true,
      모자 : false
      좋아요 : 1
     }
    }
    이러한 객체가 있을때 저는 좋아요 부분만 2 로 변경해서 db에 업데이트 하고싶습니다
    
    그럼 db에 전송할때 { name : outer1, option : { 좋아요 : 1 } } 이렇게 하위 객체의 데이터로 찾아서 그 부분만 수정해서 업데이트 하는 문법이 없는지 궁금합니다
    
    없다면 몇뎁스 깊이의 아주 하위 객체 데이터 하나만 바뀌었을때도 늘 최상위 객체까지 모두 전송해서 업데이트 해야되는건지, 
    
    다들 그렇게 사용하는건지요?
    아우 어휘력이 딸려서 제가 궁금한것도 설명을 잘 못하겠네요
    #60186

    매우초보
    참가자
    만약 제가 여쭤본 문법이 없다면 객체속의 일부데이터를 수정했더라도 db에 업데이트를 할때는 
    리액트에서 객체 state 변경하듯이 수정한 일부분이 아닌 전체 객체를 통째로 전송해서 업데이트 해야합니까?
    node.js 에서도 똑같은 방식으로 데이터를 업데이트 하는게 맞다면 코드가 이런식으로 길게 짜여지는데 
    이렇게 하는게 맞을까요?
    
    
    #60220

    codingapple
    키 마스터
    https://www.mongodb.com/docs/v4.4/reference/operator/update/positional/#update-documents-in-an-array
    이런거 쓰면 array 안의 object 들 일부 업데이트 가능합니다
5 글 보임 - 1 에서 5 까지 (총 5 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠