Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

165
Vistas
Mongo usuario existe validación

Estoy tratando de realizar un formulario de registro en Mongo Node.js y Express.js . Ya he completado la tarea que inserta un documento en la colección de usuarios para un nuevo usuario. Pero necesito crear una validación si existe un usuario basado en el nombre de usuario o el correo electrónico como claves.

Por ejemplo, envío un usuario: { "_id": { "$oid": "62ac54c4cd1c80d0e8e2f68a" }, "firstName": "test", "lastName": "test", "email": "test@test.com", "password": "test", "username": "test"}

Si trato de enviar los mismos créditos en el formulario de registro, mi API falla por completo con el código de error:

 db.collection(...).exists is not a function

Nota : estoy usando mangosta

Código:

 app.post("/login", async (req, res) => { const firstName = req.body.firstName; const lastName = req.body.lastName; const email = req.body.email; const password = req.body.password; const username = req.body.username; var data = { "firstName": firstName, "lastName": lastName, "email": email, "password": password, "username": username } console.log(data); let userExist = await db.collection('users').exists({ "username": username, "email": email }) console.log(userExist); if (userExist) { console.log("User already exists"); return res.render('login'); } else { db.collection('users').insertOne(data, function (err, collection) {if (err) throw err;}); } res.render('login', { 'data': data }); });

¿Algunas ideas?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Veo que está tratando de encontrar si el usuario existe en la colección a través de dos campos que son nombre de username y email .

Con mongoose, en realidad podría hacerlo de muchas maneras y el mejor enfoque es definir su modelo, https://mongoosejs.com/docs/models.html

Si desea seguir con su caso, puede probar esto:

 db.collection('users').find({ "username": username, "email": email })
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda