首页 > 解决方案 > 无法将新用户添加到 mongodb 数据库

问题描述

我需要帮助伙计们!!!我想向数据库添加一个新用户,但我不能。我已连接到 Mongodb 服务器(使用 Atlas)。我的 console.log() 显示我正在将模型 User 导入到 passport-setup.js 文件中(我想从中添加新用户)。我是 MongoDB 的新手。

App.js,我通过 Atlas 连接到 mongodb 服务器(从不同的文件导入连接字符串:

mongoose.connect(keys.mongodb.dbURI, () => {
    console.log('Successfully connected to mongodb...');
})

用户模型.js:

const mongoose = require('mongoose');
mongoose.Promise = global.Promise;
const Schema = mongoose.Schema;

const userSchema = new Schema({
    username: String,
    googleId: String
})

const User = mongoose.model('user', userSchema);

module.exports = User;

护照-setup.js:

const passport = require('passport');
const GoogleStrategy = require('passport-google-oauth20');
const keys = require('./keys.js');
const User = require('./db/models/user-model.js');
console.log('inside passport setup')
console.log('User:', User);


passport.use(
    new GoogleStrategy({
        // options for the strategy
        callbackURL: '/auth/google/redirect',
        clientID: keys.google.clientID,
        clientSecret: keys.google.clientSecret
    }, (accessToken, refreshToken, profile, done) => {
        // passport callback function
        console.log('passport callback function fired')
        console.log(profile)
        new User({
            username: profile.displayName,
            googleId: profile.id
        }).save().then((newUser) => {
            console.log('new user created: ' + newUser);
        })
    })
)

谢谢您的帮助!

标签: node.jsmongodbmongoosepassport.jsgoogle-oauth

解决方案


推荐阅读