我開發與MongoDB的應用程序和的NodeJS 我還要提到,我是新來的都那麼請幫助我通過這個問題參考子文檔的_id在另一個集合的MongoDB
我的數據庫有一個收藏門類然後在每個類別中,我將產品存放在子文檔 就像如下:
{
_id : ObjectId(),
name: String,
type: String,
products : [{
_id : ObjectId(),
name : String,
description : String,
price : String
}]
});
當涉及到存儲在訂單數據庫中收集的訂單將是這樣的:
{
receiver : String,
status : String,
subOrders : [
{
products :[{
productId : String,
name : String,
price : String,
status : String
}],
tax : String,
total : String,
status : String,
orderNote : String
}
]
}
正如你所看到的,我們正在存儲_id產品,它是 中的類別的子文檔,當存儲時顯然沒有問題,當涉及到獲取這些數據時,如果我們只需要有限的字段,如名稱或價格那裏也沒有問題,但如果以後我們需要一些額外的領域像產品描述,...他們不存儲在訂單。
我的問題是這樣的: 是否有任何簡單的方法來訪問除mongodb中的整個類別的循環之外的其他產品領域,即我需要一個示例代碼來查詢產品的描述, MongoDB的?
或者我們的設計和實現是錯誤的,我必須從頭開始重新設計它,並將產品從類別中分離到另一個集合中?
請不要把網站鏈接或一般談論MongoDB的博客和其收藏的實現,除非他們集中在一個非常類似的問題,提前挖掘
感謝
我想我是在我的問題不夠清楚,提供足夠的細節居然沒有任何的產品收集我的數據庫,.. 有一個類別,它具有存儲產品的一個子文檔,因爲我是新到Mongodb我正在尋找最快的查詢和最優化的一個只通過產品獲取product.description _id – Siavosh
對不起,我已經將它精神轉化爲一個工作結構。我已經添加了一些更多的細節,解釋爲什麼您的建議結構不適合您的要求。 – WiredPrairie
感謝您更新答案,所以您的建議是避免多個步驟嵌套元素 – Siavosh