Node.js Can';t使用Mongoose将数据保存到MongoDB服务器

Node.js Can';t使用Mongoose将数据保存到MongoDB服务器,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,我正在尝试将一个数据库集成到我的DiscordBot应用程序中,目前在使用Mongoose将新用户输入MongoDB时遇到了问题。 控制台也没有显示任何错误 const mongoose = require('mongoose') const User = require('../models/userModels') module.exports = message => { User.findOne({userID:message.author.id}, (err,user)

我正在尝试将一个数据库集成到我的DiscordBot应用程序中,目前在使用Mongoose将新用户输入MongoDB时遇到了问题。 控制台也没有显示任何错误

const mongoose = require('mongoose')
const User = require('../models/userModels')

module.exports = message => {
    User.findOne({userID:message.author.id}, (err,user)=>{
        if(user == null){ //Create new db collections if none was found
            const user = new User({
                _id: mongoose.Types.ObjectId(),
                userID: message.author.id,
                username: message.author.username,
                role: ["default"],
                balance: 0,
                level: 1,
                exp: 0,
                lastAttendance: message.createdAt
            })

            user.save()
            .then(result => {
                console.log(result)
                message.reply("Information saved")
            })
            .catch(err => console.log.err)

        }
}
这是我的型号代码:

const mongoose = require('mongoose')
const Schema = mongoose.Schema

var userSchema = new Schema({
    _id: Schema.Types.ObjectId,
    userID:{type: String, unique:true, required:true},
    username: String,
    balance:{type: Number, require:true},
    role: {type:String, enum: ['default','admin']},
    level:{type: Number, require:true},
    exp:{type: Number, require:true},
    lastAttendance: Date
})

module.exports = mongoose.model('Users', userSchema)

无法获取错误日志的原因是
console.log
语句中的
catch
语法错误。将
console.log.err
更改为
console.log(err)

userSchema
中为
role
定义的类型是
String
,您将其作为数组
role:[“default”]
传递。您需要将其更改为
角色:“默认值”


同样在成功时,如果您试图将键
reply
设置为
message
对象的值
“保存的信息”
,那么您应该将
message.reply(“保存的信息”)
替换为
message.reply=“保存的信息”

是否可以在if条件之前
console.log(user)
,检查用户是否存在?另外
console.log(message.author)
检查其内容问题已解决,谢谢!!顺便说一下,message.reply是discord.js模块中的一个函数,所以我对这部分没意见