codeDragon
codeDragon

Reputation: 565

MongoDb findone() result returns null

I have the following selection query, which should return the whole document based on user email an password input ( basically I am trying to make a login), result consols null. What´s wrong?

 user.loginUser = (jUserData, fCallback) => {
        var jUser = {
            userName: jUserData.txtEmailorPhoneNumber,
            password: jUserData.txtPassword
        }
        global.db.collection('users').findOne({ jUser }, (err, result) => {
            if (err) {
                var jError = { "status": "error", "message": "ERROR -> loginUser -> user.js -> 001" }
                return fCallback(false, jError)
            }
            var jOk = { "status": "ok", "message": "user.js -> user logged in -> 000" }
            console.log(JSON.stringify(result))
            return fCallback(false, jOk)
        })
    }

Users collection schema:

{
    "_id" : ObjectId("5a1a627f942bca5149ab3f25"),
    "userName" : "[email protected]",
    "firstName" : "A",
    "lastName" : "A",
    "password" : "1",
    "image" : "public/img_webshop/fileUserImage-1511678591824.png"
}

Upvotes: 1

Views: 2413

Answers (1)

Idan Dagan
Idan Dagan

Reputation: 11655

Try findOne(jUser, ...) instead of findOne({ jUser }, ...)

Upvotes: 1

Related Questions