MongoDB findOne () Висит и не выполняется - PullRequest
0 голосов
/ 23 января 2020

Почему-то кажется, что мой findOne не работает должным образом.

const express = require('express')
const User = require('../models/User')
const router = express.Router();
const bcrypt = require('bcryptjs')


//Login Page 
router.get('/login', (req, res) => res.render('login'));


//Register Page 
router.get('/register', (req, res) => res.render('register'));


//Register Handle
router.post('/register', (req, res, next) => {
    const { name, email, password, password2 } = req.body;
    let errors = [];

    //Check required feilds 
    if (!name || !email || !password || !password2) {
        errors.push({ msg: `Please fill all the feilds.` })
    }

    if (password !== password2) {
        errors.push({ msg: `Passwords do not match.` })
    }

    //check password length
    if (password.length < 6) {
        errors.push({ msg: `Password should be atleast 6 characters.` })
    }


    if (errors.length > 0) {
        res.render('register', {
            errors,
            name,
            email,
            password,
            password2
        })
    } else {
        console.log(`inside else...`);

      //  res.send(`I am coming`);

        User.findOne({ email : email }).then(user => {
            console.log(`inside find one...`);
            if (user) {
                errors.push({ msg: 'Email already exists' });
                res.render('register', {
                    errors,
                    name,
                    email,
                    password,
                    password2
                });

            } else {

                console.log(`creating new user`);
                const newUser = new User({
                    name,
                    email,
                    password
                });

                console.log(newUser)
                res.send('user created')

            }
        })
    }
});

module.exports = router
var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/";

MongoClient.connect(url, function(err, db) {
  if (err) throw err;
  var dbo = db.db("mydb");
  dbo.createCollection("customers", function(err, res) {
    if (err) throw err;
    console.log("Collection created!");
    db.close();
  });
});

Вывод программы:

Сервер запущен на порту 5000 (узел: 7084) DeprecationWarning: текущий механизм обнаружения и мониторинга сервера устарел и будет удален в следующей версии. Чтобы использовать новый механизм обнаружения и мониторинга сервера, передайте опцию {useUnifiedTopology: true} конструктору MongoClient.

Коллекция создана!

в другом месте ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...