0
我已經使用mongoose爲MongoDB創建了一個數據模型模式。數據模型用於調查,同一項調查由4家公司的人員填寫。讓我們稱之爲:使用單個數據模型模式創建具有不同名稱的多個集合
- A公司
- B公司
- C公司
- 公司d
需要注意的重要一點是,我將有一個單獨的集合爲每個公司內MongoDB(即A公司,B公司等)可以更容易地爲特定公司查找數據。
所有這4個集合將使用相同的數據模型模式,因爲他們將收集完全相同的數據。 我該如何做到這一點?
數據模型模式:
var mongoose = require('mongoose');
var survey = new mongoose.schema({
sessionNo: {type: Number, required: true, min: 1, max: 6},
firstName: {type: String, required: true},
lastName: {type: String, required: true},
role: {type: String, required: true},
programme: {type: String, required: true},
q1: {type: String, required: true},
q2: {type: String, required: true},
q3: {type: String, required: true},
q4: {type: String, required: true},
q5: {type: String, required: true}
});
mongoose.model('userSatisfactionSurvey', survey);
不是一個好習慣,如果模式相同,只需添加'company'字段並且不要過於複雜的東西 –
@RohitHazra感謝提交。但是,這會將所有調查數據添加到一個集合中。將會有成千上萬的實體,這不會導致延遲和「獲取」數據的問題嗎?它必須通過篩選這麼多條目才能找到屬於「A公司」的所有條目。 – Skywalker
這就是爲什麼您使用mongoDb的原因,有一個額外的字段大多是一個不錯的選擇,而不是創建一個新的集合。 –