mongodb - 尝试创建前缀命令时出现错误消息
问题描述
收到此错误。我正在尝试编写一个 /prefix [new prefix] 命令并且它会更新,这是我的错误:猫鼬:要创建新的 ObjectId,请尝试Mongoose.Types.ObjectId
而不是使用Mongoo Trace at ObjectId (C:\Users\dakot\Desktop\SAFBOT\node_modules\mongoose\lib\schema\objectid.js:35:1 at Object.<anonymous> (C:\Users\dakot\Desktop\SAFBOT\models\guild.js:4:32) at Module._compile (internal/modules/cjs/loader.js:1063:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10) at Module.load (internal/modules/cjs/loader.js:928:32) at Function.Module._load (internal/modules/cjs/loader.js:769:14) at Module.require (internal/modules/cjs/loader.js:952:19) at require (internal/modules/cjs/helpers.js:88:18) at Object.<anonymous> (C:\Users\dakot\Desktop\SAFBOT\commands\prefix.js:2:15) at Module._compile (internal/modules/cjs/loader.js:1063:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10) at Module.load (internal/modules/cjs/loader.js:928:32) at Function.Module._load (internal/modules/cjs/loader.js:769:14) at Module.require (internal/modules/cjs/loader.js:952:19) at require (internal/modules/cjs/helpers.js:88:18) at module.exports (C:\Users\dakot\Desktop\SAFBOT\handlers\command_handler.js:7:25) C:\Users\dakot\Desktop\SAFBOT\node_modules\mongoose\lib\schema.js:475 TypeError: Invalid value for schema path
_id`,在 Schema.add (C:\Users\dakot\Desktop\SAFBOT\node_modules\mongoose\lib\schema.js:475:13) 在新架构 (C:\Users\dakot\Desktop \SAFBOT\node_modules\mongoose\lib\schema.js:129:10) 在 Mongoose.Schema (C:\Users\dakot\Desktop\SAFBOT\node_modules\mongoose\lib\schema.js:94:12) 在对象。(C:\Users\dakot\Desktop\SAFBOT\models\guild.js:3:30) 在 Module._compile (internal/modules/cjs/loader.js:1063:30) 在 Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10) 在 Module.load (internal/modules/cjs/loader.js:928:32) 在 Function.Module._load (internal/modules/cjs/loader.js :769:14) 在 Module.require (internal/modules/cjs/loader.js:952:19) 在 require (internal/modules/cjs/helpers.js:88:18) 在 Object. (C:\Users\dakot\Desktop\SAFBOT\commands\prefix.js:2:15) 在 Module._compile (internal/modules/cjs/loader.js:1063:
我的代码: Prefix.js 文件:
const Guild = require('../models/guild');
module.exports = {
name: 'prefix',
description: 'Sets guild prefix',
async execute (client, message, args, Discord, cmd, prefix){
const settings = await Guild.findOne({
guildID: message.guild.id
}, (err, guild) => {
if (err) console.error(err)
if(!guild){
const newGuild = new Guild({
_id: mongoose.Schema.Types.ObjectId(),
guildID: String,
guildName: String,
prefix: String
})
newGuild.save()
.then(result => console.log(result))
.catch(err => console.error(err));
return message.channel.send('This server was not in our database! We have added it in, please re-use the command for it to work...').then(m => m.delete({timeout: 10000}))
}
});
await settings.updateOne({
prefix: args[0]
});
return message.channel.send(`Prefix has been edited to ${args[0]}`)
}
}```
解决方案
推荐阅读
- jsp - 将多个选项传递到 POST 请求的 URL 查询字符串的正确方法
- ios - SpriteKit 动画由于 validateIndexBuffer 而崩溃
- asp.net - 背景图片后无法添加任何内容
- java - Android Studio 的监视窗口中的 new String(bytes[])
- mysqli - mysql当前时间戳更新数据
- sql - 将三个 SQL 更新语句合二为一
- python - 如何在熊猫中使用向后时间窗口计算平均值
- testing - 在 JMeter 的另一个用户定义变量中使用用户定义变量的值
- android - I can't see the content because of the FrameLayout
- mysql - Cakephp3 lowercases sql query