MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Mongoose Mongodb fragt ein Array von Objekten ab

Ich habe es geändert, um findOne anstelle von find zu verwenden, und es funktioniert jetzt. Ich bin mir nicht sicher, warum dies einen Unterschied machen sollte. Dies ist die findOne-Funktion, die ich verwendet habe:

User.findOne({'local.rooms': {$elemMatch: {name: req.body.username}}}, function (err, user) {

        if (err){
            return done(err);
        }    

        if (user) {
            console.log("ROOM NAME FOUND");
            req.roomNameAlreadyInUse = true;
            next();

        } else {
            req.roomNameAlreadyInUse = false;
            console.log("ROOM NAME NOT FOUND");
            next();

        }

    });