我有一個關係SQL數據庫被改爲MongoDB。在SQL中有三個相關的表格:Farm,Division,Wombat(名稱和目的已針對此問題進行了更改)。還有一個Farmer表,它等同於一個用戶表。MongoDB模式嵌入和嵌套唯一鍵
使用貓鼬,我想出了這個新的模式:
var mongoose = require('mongoose');
var farmSchema = new mongoose.Schema({
// reference to the farmer collection's _id key
farmerId: mongoose.Schema.ObjectId,
name: String, // name of farm
division: [{
divisionId: mongoose.Schema.ObjectId,
name: String,
wombats: [{
wombatId: mongoose.Schema.ObjectId,
name: String,
weight: Number
}]
}]
});
每一個(現在的)嵌套藏品中有一個獨特的領域。這將允許我使用Ajax發送uniqueId和權重(例如)來調整該值,而不是僅在權重改變時更新整個文檔。
這感覺就像是一個不適合MongoDB的SQL適配。有一個更好的方法嗎?
和另一個downvote沒有解釋。謹慎闡述? – mnemosyn