웹 프론트엔드 JS 튜토리얼 몽구스의 객체 업데이트에 대한 자세한 소개가 있습니다.

몽구스의 객체 업데이트에 대한 자세한 소개가 있습니다.

Jun 19, 2018 pm 05:35 PM
고쳐 쓰다

최근 몽구스를 사용하면서 이전에 주목하지 않았던 지식 포인트를 발견했습니다. 다음 글에서는 주로 몽구스에서 객체를 업데이트하는 두 가지 방법을 샘플 코드를 통해 자세히 비교하여 제공하고 있습니다. 누구나 공부할 수 있는 더 좋은 참고서가 필요한 친구들이 참고할 수 있습니다.

머리말

Mongoose는 node.js 비동기 환경에서 mongodb를 편리하게 운영하기 위한 객체 모델 도구입니다

이를 사용하려면 먼저 node.js와 mongodb를 설치해야 합니다. 설치 및 설치에 관해서는 mongodb 작업 소개는 //www.jb51.net/article/80296.htm

Demonstration

시나리오 설명

장바구니 수량 업데이트 및 확인을 참조하세요. status

비즈니스 로직

현재 사용자의 장바구니 개체 Cart를 쿼리하고 프런트 엔드에서 전달된 수량 및 선택한 필드를 업데이트합니다.

메서드 1

var _ = require('underscore');
Cart.findOneAndUpdate({
 _id: req.body.cart._id,
 user: user
 }, _.pick(req.body.cart, 'quantity', 'selected'), {
 new: true
 },
 function(err, updatedCart) {
 res.send(
  utils.json({
  data: updatedCart
  })
 );
 }
);
로그인 후 복사

참고: _.pick은 동일합니다.

 {
 quantity: req.body.cart.quantity,
 selected: req.body.cart.selected
 }
로그인 후 복사

방법 2

var _ = require('underscore');
Cart.findOne({
 _id: req.body.cart._id,
 user: user
 }, function(err, cart) {
 if (err) {
  console.log(err);
 }
 // 复制对象
 _.extend(cart, req.body.cart);
 cart.save(function(err, updatedCart) {
  res.send(
  utils.json({
   data: updatedCart
  })
  );
 });
 }
);
로그인 후 복사

Comparison

첫 번째 코드는 한 단계에서만 findOneAndUpdate를 사용하는데, 이는 더 간결하고 업데이트된 필드가 적고 매우 명확한 시나리오에 적합합니다

두 번째 방법은 먼저 One을 찾은 다음 엔터티에 대한 작업을 수행합니다. 저장 작업은 밑줄 개체 복사를 사용하므로 전체 개체 작업이 더 유연해지고 불확실한 필드가 많은 시나리오에 적합합니다.

결론

요구 사항은 항상 다음과 같습니다. 바뀌기 때문에 일반적으로 두 번째 방법을 사용합니다.

위 내용은 모두를 위해 제가 정리한 내용입니다. 앞으로 모든 사람에게 도움이 되기를 바랍니다.

관련 기사:

Angular4에서 HTML 속성 바인딩을 구현하는 방법

JS를 사용하여 구구단을 작성하는 방법

JS를 사용하여 닭 100마리 구매 문제 계산

위 내용은 몽구스의 객체 업데이트에 대한 자세한 소개가 있습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Blizzard Battle.net 업데이트가 45%에서 멈추는 문제를 해결하는 방법은 무엇입니까? Blizzard Battle.net 업데이트가 45%에서 멈추는 문제를 해결하는 방법은 무엇입니까? Mar 16, 2024 pm 06:52 PM

블리자드 Battle.net 업데이트가 45%에서 계속 멈춥니다. 어떻게 해결하나요? 최근 많은 사람들이 소프트웨어를 업데이트할 때 진행률이 45%에서 멈췄습니다. 여러 번 다시 시작해도 계속 멈춥니다. 그렇다면 이 상황을 해결하려면 어떻게 해야 할까요? 이 소프트웨어 튜토리얼은 더 많은 사람들에게 도움이 되기를 바라며 작업 단계를 공유할 것입니다. 블리자드 Battle.net 업데이트가 45%에서 계속 멈춥니다. 해결 방법 1. 클라이언트 1. 먼저 클라이언트가 공식 웹사이트에서 다운로드한 공식 버전인지 확인해야 합니다. 2. 그렇지 않은 경우 사용자는 아시아 서버 웹사이트에 들어가 다운로드할 수 있습니다. 3. 입력 후 오른쪽 상단의 다운로드를 클릭하세요. 참고: 설치할 때 중국어 간체를 선택하지 마십시오.

에픽세븐 2월 22일 업데이트: 미라클 메이드 왕국 2주차가 시작됩니다. 에픽세븐 2월 22일 업데이트: 미라클 메이드 왕국 2주차가 시작됩니다. Feb 21, 2024 pm 05:52 PM

에픽세븐은 2월 22일 낮 11시 지속적인 업데이트가 확정되었습니다. 이번 업데이트를 통해 레아의 한정 소환률 증가, 달콤한 미라클, 신비한 카드 풀 업데이트 등 다양한 신규 활동과 콘텐츠가 선보일 예정입니다. , 스페셜 서브 스토리 미라클 메이드 왕국의 두 번째 주가 시작되었습니다. 모바일 게임 업데이트 일정 : The Seventh Epic 2월 22일 업데이트 예정 : 미라클 메이드 왕국 2주차 오픈 ※'레이아' & '스위트 미라클' 한정 소환 확률 UP! ■기간 한정 소환 확률 업 시간 : -2024/02/22(목) 11:00 ~ 2024/03/07(목) 10:59 ■캐릭터 속성 및 직업 : 타고난 속성, 전사 ■캐릭터 소개 : 4인 밴드 더 기적의 메이드 왕국'의 서브보컬이자 베이(Bei)

pip 버전을 업데이트하는 간단한 단계: 1분 안에 완료 pip 버전을 업데이트하는 간단한 단계: 1분 안에 완료 Jan 27, 2024 am 09:45 AM

1분 안에 완료: pip 버전을 업데이트하려면 특정 코드 예제가 필요합니다. Python의 급속한 발전으로 pip는 Python 패키지 관리를 위한 표준 도구가 되었습니다. 그러나 시간이 지남에 따라 pip 버전은 지속적으로 업데이트됩니다. 최신 기능을 사용하고 가능한 보안 취약점을 수정하려면 pip 버전을 업데이트하는 것이 매우 중요합니다. 이 글에서는 1분 안에 pip를 빠르게 업데이트하는 방법을 소개하고 구체적인 코드 예시를 제공합니다. 먼저 명령줄 창을 열어야 합니다. Windows 시스템에서는 다음을 사용할 수 있습니다.

Ubuntu 24.04에 Angular를 설치하는 방법 Ubuntu 24.04에 Angular를 설치하는 방법 Mar 23, 2024 pm 12:20 PM

Angular.js는 동적 애플리케이션을 만들기 위해 자유롭게 액세스할 수 있는 JavaScript 플랫폼입니다. HTML 구문을 템플릿 언어로 확장하여 애플리케이션의 다양한 측면을 빠르고 명확하게 표현할 수 있습니다. Angular.js는 코드를 작성, 업데이트 및 테스트하는 데 도움이 되는 다양한 도구를 제공합니다. 또한 라우팅 및 양식 관리와 같은 많은 기능을 제공합니다. 이 가이드에서는 Ubuntu24에 Angular를 설치하는 방법에 대해 설명합니다. 먼저 Node.js를 설치해야 합니다. Node.js는 서버 측에서 JavaScript 코드를 실행할 수 있게 해주는 ChromeV8 엔진 기반의 JavaScript 실행 환경입니다. Ub에 있으려면

랜턴과 던전 2월 29일 업데이트 : 리마스터 버전 ╳ '네자 전설' 연계 랜턴과 던전 2월 29일 업데이트 : 리마스터 버전 ╳ '네자 전설' 연계 Feb 28, 2024 am 08:13 AM

랜턴앤던전스는 2월 29일 업데이트가 확정되었으며, 업데이트 이후 랜턴앤던전스의 리마스터 버전이 출시될 예정이며, 리마스터 버전 역시 레전드 오브 나타와 연동될 예정이다. 직업 변경, 플레이어 직접 직업 변경, 던전 콘텐츠 확장, 새로운 던전 지역 오픈 등이 가능합니다. 모바일게임 업데이트 일정 랜턴과 던전 2월 29일 업데이트 : 리마스터 버전 ╳ '네자전설' ​​연계버전 주요 내용 신규 직업, 전직을 권유받은 이유는 무엇입니까? . 전직 후 랜턴 홀더도 멋진 기술을 많이 배울 수 있다고 들었습니다. 고로는 태국 바지가 뜨겁습니다! 나타의 전설이 함께 온다! 뜨거운 바퀴를 밟고 천지의 원을 손에 쥐고 ♫ ~ 현명하고 용감한 작은 영웅 나타와 어린 용 소녀가 곧 온다

Windows가 지정된 장치, 경로 또는 파일에 액세스할 수 없습니다. Windows가 지정된 장치, 경로 또는 파일에 액세스할 수 없습니다. Jun 18, 2024 pm 04:49 PM

친구의 컴퓨터에 이러한 오류가 있습니다. "이 PC"와 C 드라이브 파일을 열면 "Explorer.EXE Windows가 지정된 장치, 경로 또는 파일에 액세스할 수 없습니다. 프로젝트에 액세스할 수 있는 적절한 권한이 없을 수 있습니다. " 폴더, 파일, 이 컴퓨터, 휴지통 등을 포함하여 더블클릭하면 이런 창이 뜨는데, 마우스 오른쪽 버튼을 클릭해서 여는 것이 정상입니다. 이는 시스템 업데이트로 인해 발생합니다. 이러한 상황이 발생하면 아래 편집기에서 해결 방법을 알려드립니다. 1. 레지스트리 편집기 Win+R을 열고 regedit를 입력하거나 시작 메뉴를 마우스 오른쪽 버튼으로 클릭하여 실행하고 regedit를 입력합니다. 2. "Computer\HKEY_CLASSES_ROOT\PackagedCom\ClassInd" 레지스트리를 찾습니다.

win10 버전 2004 업데이트 실패 0x80004002 해결 방법 win10 버전 2004 업데이트 실패 0x80004002 해결 방법 Jan 10, 2024 am 09:25 AM

우리 컴퓨터가 win10 시스템을 사용하여 설치되었고 win102004로 업데이트할 준비가 된 경우, 업데이트 중에 나타나는 win10 버전 2004에 대한 업데이트가 실패하고 오류 코드 0x80004002가 표시됩니다. 편집자는 우리 내부에 일부 부정확성이 있기 때문에 그럴 수 있다고 생각합니다. 문제 해결로 인해 발생한 문제는 명령 프롬프트에서 해결할 수 있습니다. 자세한 해결 단계는 편집기에서 수행한 작업을 살펴보겠습니다~ win10 버전 2004 업데이트 실패 0x80004002 문제 해결 방법 1: 타사 소프트웨어의 영향을 제거하기 위한 "클린 부팅": 1. 비코어 중지 프로그램 작동(첫 번째 타사 안티 바이러스 및 최적화 소프트웨어 포함) 2. 가능하면 장치에서 타사 안티 바이러스를 제거합니다.

MSI 그래픽 카드 드라이버를 업데이트하는 방법은 무엇입니까? MSI 그래픽 카드 드라이버 다운로드 및 설치 단계 MSI 그래픽 카드 드라이버를 업데이트하는 방법은 무엇입니까? MSI 그래픽 카드 드라이버 다운로드 및 설치 단계 Mar 13, 2024 pm 08:49 PM

MSI 그래픽 카드는 시장의 주류 그래픽 카드 브랜드입니다. 우리는 그래픽 카드가 성능을 달성하고 호환성을 보장하려면 드라이버를 설치해야 한다는 것을 알고 있습니다. 그렇다면 MSI 그래픽 카드 드라이버를 최신 버전으로 업데이트하는 방법은 무엇입니까? 일반적으로 MSI 그래픽 카드 드라이버는 공식 웹사이트에서 다운로드하여 설치할 수 있습니다. 자세한 내용은 아래에서 알아보세요. 그래픽 카드 드라이버 업데이트 방법: 1. 먼저 "MSI 공식 웹사이트"에 들어갑니다. 2. 입력 후 오른쪽 상단의 "검색" 버튼을 클릭하여 그래픽 카드 모델을 입력하세요. 3. 그런 다음 해당 그래픽 카드를 찾아 세부 정보 페이지를 클릭합니다. 4. 그런 다음 위의 "기술 지원" 옵션을 입력하세요. 5.마지막으로 "드라이버 및 다운로드"로 이동합니다.

See all articles