我有一个用户模型,其中每个用户可以拥有许多公司,我还想跟踪最后选择的公司。 但是问题是,当我从公司阵列删除公司时,我需要确保在需要时可以更新最后一个公司。
示例
var user_doc = {
last_company_id: '1',
companies: ['1','2','3'],
username: 'jucesr'
}
然后我将删除公司1,文档将类似于
var user_doc = {
last_company_id: '1',
companies: ['2','3'],
username: 'jucesr'
}
这将导致我的数据不一致。我可以更新last_company_id,但我想知道是否有更简单的方法。
const UserSchema = new mongoose.Schema({
last_company_id:{
type: mongoose.Schema.Types.ObjectId,
ref: 'Company'
},
companies: [{
type: mongoose.Schema.Types.ObjectId,
ref: 'Company'
}],
username: {
type: String,
required: true,
unique: true
}
});