簡體   English   中英

為動態數量的鍵/值對制作mongoose模式的正確方法

[英]Proper way to make a mongoose schema for a dynamic number of key/value pairs

我有一個單詞計數功能,它返回一個帶有一組鍵值對的對象。 這樣的事情: {a: 4, tale: 3, of: 8, two: 3, cities: 3 }

顯然,該對象可以具有不同的長度並且具有不同的鍵/值對。 我想將此數據添加到Mongodb中的“文章”文檔中。 使用mongoose.js這是我能想到的最好的架構。 我擔心mongo會創建大量的“Word”文檔,其中包含一個鍵/值對和一個id。 有沒有更好的辦法?

在/models/article.js中

mongoose.Schema({
  wordcounts: [wordSchema]
})

在/models/word.js中

mongoose.Schema({
  word: String,
  count: Number
})

所以它最終看起來像:

[{
_id: 3980923urjf0e232902343252,
wordcounts: [
  {_id: 2039840297502938402934, word: "Apple", count:3}, 
  {_id: 20398sdfsdfsdfaaa4asd3, word: "Banana", count:5}
  ]
}]

有沒有更好的辦法?

如果您不需要索引,可以使用Schema.Types.Mixed (請參閱: httpSchema.Types.Mixed

否則,您不必定義子集合,因為您可以將其定義為:

mongoose.Schema({
  wordcounts: [{
    word: String,
    count: Number
  }]
})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM