【发布时间】:2021-09-19 16:10:17
【问题描述】:
我正在开发一个 djs 机器人,但我遇到了一个我不知道如何修复的错误 我看过https://docs.mongodb.com/manual/indexes/ 和NodeJs, Mocha and Mongoose 但是这里的信息似乎没有任何帮助-
错误发生在这里 -
const Data = await serverModel.findOne({ serverID: message.guild.id });
try{
console.log(`checking if a database exists for ${message.guild}`);
console.log(Data);
if(!Data) {
console.log(`Data base doent exist for ${message.guild}`);
console.log(`Creating a database for ${message.guild}`);
const server = await serverModel.create({
serverID: message.guild.id,
calling: 'no',
channel: null,
talkingWith: null,
stickyChannel: null,
stickyMessage: null,
stickyID: null,
});
console.log('shit');
server.save();
return;
}
}
catch(err) {
console.log(err);
}
这是我的 serverModel/serverSchema -
const mongoose = require('mongoose');
// ServerSchema
const ServerSchema = new mongoose.Schema({
serverID: { type: String, require: true, unique: true, sparse:true },
calling: { type: String, require: true, unique: false, sparse:true },
channel: { type: String, require: true, unique: false, sparse:true },
talkingWith: { type: String, require: true, unique: false, sparse:true },
stickyChannel: { type: String, require: true, unique: false, sparse:true },
stickyMessage: { type: String, require: true, unique: false, sparse:true },
stickyID: { type: String, require: true, unique: false, sparse:true },
});
const model = mongoose.model('ServerSchema', ServerSchema);
module.exports = model;
最后这是我得到的错误 -
checking if a database exists for Vixo
null
Data base doent exist for Vixo
Creating a database for Vixo
MongoError: E11000 duplicate key error collection: database.serverschemas index: stickyChannel_1 dup key: { stickyChannel: null }
【问题讨论】:
-
我会做@Dinesh Ty
-
我爱你,谢谢你
-
@Karlis Kazaks 如果我的回答有用,请点赞。
标签: node.js mongodb mongoose discord.js