Можете просто да използвате Database.CollectionNames()
метод, който връща имената на колекциите, присъстващи в дадената база данни. Връща част, в която трябва да проверите дали вашата колекция е в списъка.
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
}
}
Но както Нийл Лън написа в коментарите си, не трябва да имате нужда от това. Трябва да промените логиката си, за да използвате MongoDB, за да не разчитате на тази проверка. Колекциите се създават автоматично, ако се опитате да вмъкнете документ, а заявките от несъществуващи колекции не дават грешка (и без резултат, разбира се).