我使用mongoose为MongoDB创建了一个数据模型模式。数据模型用于调查,同一调查由4家公司的人员填写。让我们打电话给他们:
需要注意的重要一点是,我将为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);
答案 0 :(得分:0)
不是一个好的做法,如果架构相同只是添加公司字段和 不要过于复杂的东西
据说,所有你需要的就是下面的内容
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}
});
var collectionOne = mongoose.model('userSatisfactionSurveyOne', survey);
var collectionTwo = mongoose.model('userSatisfactionSurveyTwo', survey);
var collectionThree = mongoose.model('userSatisfactionSurveyThree', survey);
var collectionFour = mongoose.model('userSatisfactionSurveyFour', survey);