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

113
Visualizações
findOneAndUpdate: ¿cómo actualizo solo un campo sin alterar el resto?

Estoy tratando de crear una CRUD app con React . Quiero que un usuario que haya iniciado sesión pueda actualizar los detalles de su perro, sin embargo, cuando uso la función findOneAndUpdate si actualizo un campo determinado, eliminará el resto a menos que también se especifiquen.

Mis datos se almacenan como tales en un Schema :

 const DogSchema = new Schema({ user: { type: Schema.Types.ObjectId, }, dogsName: { type: String, required: true, }, // Dogs details dogsDetails: { dogsBreed: { type: String, }, microchip: { hasChip: { type: Boolean, }, microchipNumber: { type: String, }, },

Luego, estos datos se destruyen en mi archivo de enrutamiento y se integran en un objeto llamado "dogFields" y cuando uso el siguiente código para actualizar, simplemente elimina todos los campos a menos que los haya actualizado específicamente (aparte de dogsName que parece pegarse)

 try { let dog = await Dog.findOneAndUpdate( { user: req.user.id }, { $set: dogFields }, { new: true } );

Supongamos que mi usuario tiene un perro configurado con el "dogsName" de "Archer", y voy a actualizar con "dogsBreed". Esto actualizará el campo "dogsBreed" y mantendrá el "dogsName" . Sin embargo, si luego voy a actualice el "hasChip" , eliminará "dogsBreed" .

Espero que esto tenga sentido y que haya proporcionado suficiente parte de mi código como ejemplo. Cualquier ayuda es apreciada. TIA.

about 4 years ago · Juan Pablo Isaza
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