gpt4 book ai didi

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

转载 作者:IT老高 更新时间:2023-10-28 13:03:35 25 4
gpt4 key购买 nike

我想在 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, 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或者你可以看到下面gist它可能会有所帮助。

关于node.js - 在 mongodb 上每个集合使用多个模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14453864/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com