node.js – 在mongodb上每个集合使用多个模式

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

OverwriteModelError: Cannot overwrite allUsers model once compiled.

OverwriteModelError: Cannot overwrite checkInOut model once compiled.

爱我的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,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,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
   };

解决方法

在猫鼬你可以做这样的事情:

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

这两个模式将保存在“用户”集合上.

有关更多信息,请参阅文档:http://mongoosejs.com/docs/api.html#index_Mongoose-model或您可以看到以下gist可能有帮助.

相关文章

这篇文章主要介绍“基于nodejs的ssh2怎么实现自动化部署”的...
本文小编为大家详细介绍“nodejs怎么实现目录不存在自动创建...
这篇“如何把nodejs数据传到前端”文章的知识点大部分人都不...
本文小编为大家详细介绍“nodejs如何实现定时删除文件”,内...
这篇文章主要讲解了“nodejs安装模块卡住不动怎么解决”,文...
今天小编给大家分享一下如何检测nodejs有没有安装成功的相关...