Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

576
Visualizações
Mongoose findbyid () devuelve nulo

Estoy tratando de encontrar un registro en mi mongo db por su id

No importa si uso findbyid(), findone(id,...), devuelve nulo

aquí está mi código. ¿cuál es la solución?

 const mongoose = require('mongoose'); mongoose.connect('mongodb://localhost/Movie', {useNewUrlParser: true}) .then(() => console.log('Connected to Databse')) .catch(err => console.err('Could not connect to MongoDB', err)); var ObjectId = require('mongodb').ObjectID; const Schema = new mongoose.Schema({ name: String, author: String, tags: [String], date: Date, isPublished: Boolean, price: Number }); const Data = mongoose.model('Datas', Schema); async function updateData(id){ const result = await Data.findById(id); console.log(result); } updateData('5a6900fff467be65019a9001');
over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Yo tuve el mismo problema. El _id en mi colección de bases de datos era una String . Después de habilitar la depuración de mongoose require('mongoose').set('debug', true) , descubrí que la id de la consulta de mangosta era ObjectId("yourId") a menos que definamos _id en el esquema. Para resolver el problema, tuve que agregar _id:String en el esquema de mongoose.

 const MyDataSchema = new Schema({ _id: String, ... ... }
over 4 years ago · Santiago Trujillo Relatório

0

Hay una solución simple para esto:

Reemplazar

 const result = await Data.findById(id);

con

 const result = await Data.findById(id).exec();

Ver Mongoose - ¿Qué hace la función exec? para una explicación de lo que hace exec()

over 4 years ago · Santiago Trujillo Relatório

0

Verifique su base de datos mongodb, si _id está almacenado como String, findById(id) no puede encontrar id . FindById(id) solo finds ObjectId('yourId') . Puede importar la base de datos utilizando mongoimport e incluyendo _id en JSON, está mal, elimine _id en JSON importado.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda