我有一个单词计数功能,它返回一个带有一组键值对的对象。这样的事情:{a: 4, tale: 3, of: 8, two: 3, cities: 3 }
显然,这个对象可以有不同的长度,并且具有不同的键/值对。我想将此数据添加到“'文章”中。 Mongodb中的文档。使用mongoose.js这是我能想到的最好的架构。我担心mongo正在制造大量的Word"具有一个键/值对和id的文档。还有更好的方法吗?
在/models/article.js
mongoose.Schema({
wordcounts: [wordSchema]
})
/ podels/word.js中的
mongoose.Schema({
word: String,
count: Number
})
所以它最终看起来像:
[{
_id: 3980923urjf0e232902343252,
wordcounts: [
{_id: 2039840297502938402934, word: "Apple", count:3},
{_id: 20398sdfsdfsdfaaa4asd3, word: "Banana", count:5}
]
}]
有更好的方法吗?
答案 0 :(得分:7)
如果您不需要编制索引,可以使用Schema.Types.Mixed
(请参阅:http://mongoosejs.com/docs/schematypes.html)
否则,您不必定义子集合,因为您可以将其定义为:
mongoose.Schema({
wordcounts: [{
word: String,
count: Number
}]
})