Simplemente puede usar el Database.CollectionNames()
método que devuelve los nombres de colección presentes en la base de datos dada. Devuelve un segmento en el que debe verificar si su colección está en la lista.
sess := ... // obtain session
db := sess.DB("") // Get db, use db name if not given in connection url
names, err := db.CollectionNames()
if err != nil {
// Handle error
log.Printf("Failed to get coll names: %v", err)
return
}
// Simply search in the names slice, e.g.
for _, name := range names {
if name == "collectionToCheck" {
log.Printf("The collection exists!")
break
}
}
Pero como escribió Neil Lunn en sus comentarios, no deberías necesitar esto. Debe cambiar su lógica para usar MongoDB para no confiar en esta verificación. Las colecciones se crean automáticamente si intenta insertar un documento, y la consulta de colecciones no existentes no arroja ningún error (y ningún resultado, por supuesto).