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

283
Vistas
La operación de actualización de MongoDB no funciona con golang mongo-driver

Esto es con referencia a

Cómo eliminar un documento dentro de una matriz en mongodb usando $pull

Necesito eliminar los subconjuntos vacíos. Necesito codificar esta consulta en go lang

 db.getCollection('workflows').update({<find condition>}, {$pull: {"workflows":[] } } )

Así que he escrito el siguiente código

 nquery := bson.D { {"level", "application"}, {"workflowName", workflowName}, {"applicationName", applicationName}, } nupdate := bson.M{"$pull": bson.M{"workflows":"[]"}} UpdateOne(getContext(), nquery, nupdate)

El resultado de UpdateOne muestra que mi consulta ha coincidido pero no ha modificado nada. Así que supongo que hay algún problema con el nupdate. Qué estoy haciendo mal ?

La función UpdateOne es parte del controlador mongo para go lang

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

"[]" no es una matriz vacía en la consulta, es una cadena que tiene corchetes de apertura y cierre.

La matriz vacía de MongoDB se puede "modelar" con un segmento vacío en Go, por ejemplo, con un valor de tipo []interface{} , por lo que un literal compuesto de este tipo es []interface{}{} .

Así que usa esto:

 nupdate := bson.M{"$pull": bson.M{"workflows": []interface{}{}}}
over 4 years ago · Santiago Trujillo Denunciar

0

Los corchetes "[]" no deben estar entre comillas ya que ahora se interpretan como una cadena ... , deben agregarse como corchetes [] y requieren en golang: &[]int{} para ser traducidos por el controlador mongo goland para vaciar la matriz ...

over 4 years ago · Santiago Trujillo 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