Я не могу создать несколько пользователей в mongodb - PullRequest
0 голосов
/ 19 апреля 2020

поэтому я создаю систему аутентификации на своем веб-сайте с паспортом в MERN.

Так что все работает нормально, зарегистрируйте пользователя и т. Д. c.

Но когда я пытаюсь повторно зарегистрироваться с другими учетными данными, это не работает.

Есть ли способ исправить это?

Вот мой код:

const Strategy = require('passport-local').Strategy
const mongoose = require('mongoose')
const User = require('../models/user');
const bcrypt = require('bcryptjs')

const salt = bcrypt.genSaltSync(10);

const SignupStrategy = new Strategy ({ passReqToCallback:true, usernameField: 'email' }, function(req, email, password, done){ 

    User.findOne({email: req.body.email}).lean().exec((err, user) => {
        if (err) {
            return done(err, null);
        }

        if (!user) {
            const encryptedPassword = bcrypt.hashSync(password, salt);
            let newUser = new User({
                email,
                password: encryptedPassword,
                first_name: req.body.first_name,
                last_name: req.body.last_name,
                date: req.body.date
            })

            newUser.save((error, inserted) => {
                if (error) {
                    return done(error, null);
                }

                return done(null, inserted);

            })
        }   
        if (user) {
            return done("User already exist", null);
        }
    })

});

module.exports = SignupStrategy;

1 Ответ

0 голосов
/ 19 апреля 2020

Не берите в голову, я использовал одного и того же пользователя MongoDB для нескольких проектов, и у меня было несколько проектов в одной коллекции, и поэтому он не работал.

...