在mongodb上为每个集合使用多个模式

我想在MongoDB中为每个集合使用多个模式,如何使用它….?
当我尝试运行它时,它给了我这个错误:

错误:

OverwriteModelError:编译后无法覆盖allUsers模型。
OverwriteModelError:编译后无法覆盖checkInOut模型。

下面是我的schema.js

  var mongoose = require('mongoose'); var Schema = mongoose.Schema , ObjectId = Schema.ObjectId; var checkInInfoSchema= new Schema({ name:String, loginSerialId:Number }); var loginUserSchema = new Schema({ sn : { type: Number, unique:true } ,uname: {type:String, unique:true} ,pass:String }); var registerUserSchema = new Schema({ sn : { type: Number, unique:true } , name: String //his/her name ,pass:String, companyKey:{type:String}, uname:{type:String,unique:true} }); var checkInOutSchema = new Schema({ uname: String ,companyKey:String ,task:String ,inTime:String ,outTime:String ,date:{type:String} ,serialId:{type:Number,unique:true} ,online:Boolean }); //Different schema for same collection "allUsers" var allUser=mongoose.model('allUsers',loginUserSchema); var registerUser=mongoose.model('allUsers',registerUserSchema); //Different schema for same collection "checkInOut" var checkInOut=mongoose.model('checkInOut',checkInOutSchema); var checkInInfo=mongoose.model('checkInOut',checkInInfoSchema); module.exports={ allUser:allUser, registerUser:registerUser, checkInOut:checkInOut, checkInInfo:checkInInfo }; 

mongoose,你可以做这样的事情:

 var users = mongoose.model('User', loginUserSchema, 'users'); var registerUser = mongoose.model('Registered', registerUserSchema, 'users'); 

这两个模式将保存在“用户”集合中。

欲了解更多信息,你可以参考文档: http : //mongoosejs.com/docs/api.html#index_Mongoose-model或者你可以看到下面的要点可能会帮助。