TIL(6/01)

seonghyeon01·2022년 6월 1일
0

mongoose populate

Population 이란??
Population는 문서의 경로를 다른 컬렉션의 실제 문서로 자동으로 바꾸는 방법입니다. 예를들어 문서 사용자 ID를 해당 사용자의 데이터로 바꿉니다. Mongoose는 우리를 도울 수있는 Population을 가지고 있습니다. 우리는 우리의 스키마에 ref를 정의하고 mongoose는 해당 ref를 사용하여 다른 컬렉션의 문서를 찾습니다.

const mongoose = require("mongoose");

const goodsSchema = mongoose.Schema({
    goodsId: {
        type: Number,
        required: true,
        unique: true,

    },
    name:
    {
        type: String,
        required: true,
        unique: true,
    },
    thumbnailUrl: {
        type: String,
    },
    category:{
        type: String,
    },
    price:
    {
        type: Number,
    },
    cart : {
        type : mongoose.Types.ObjectId,
        ref : 'Cart',
    }
});

module.exports = mongoose.model("Goods",goodsSchema);

cart의 id값을 참조해서 값을 들고 올 수 있다.


 {
  "goods": {
    "_id": "629732984ebe9f25e277c067",
    "goodsId": 7,
    "name": "음료수",
    "category": "drink",
    "price": 3000,
    "cart": [
      {
        "_id": "629728909eda2b9c33d40ef6",
        "goodsId": 1,
        "quantity": 1,
        "__v": 0
      }
    ],
    "__v": 0
  }
}

object로 저장된 id값을 참조해서 해당 cart에 값을 들고온다

profile
I want to be programmer

0개의 댓글