我如何在 mongodb 中使用 golang 进行会话
how i get a session in mongodb with golang
我需要使用方法 CollectionNames() 来列出数据库的所有集合。
我将不得不在 mongoDB:
中创建一个 session
sess := ... // obtain session
db := sess.DB("") // Get db, use db name if not given in connection url
names, err := db.CollectionNames()
我在哪里可以找到在 MongoDB 中获取会话的示例?
我一直连接着下路的DB:
cliente_local, err := mongo.NewClient(options.Client().ApplyURI(cadena_conexion))
if err != nil {
log.Fatal(err)
}
ctx, cancelar = context.WithTimeout(context.Background(), 10*time.Second)
err = cliente_local.Connect(ctx)
if err != nil {
log.Fatal(err)
}
defer cancelar()
mongo_cliente = cliente_local.Database(DATABASE)
如何创建会话?
提前致谢!!
您似乎混淆/混淆了不同的 MongoDB 驱动程序。 DB.CollectionNames()
存在于 mgo
驱动程序中,该驱动程序较旧且未维护。
您使用的驱动程序是官方mongo-go
驱动程序,它有不同的获取现有集合列表的方法。
mongo-go
驱动有Database.ListCollectionNames()
方法,你可以这样使用:
names, err := mongo_cliente.ListCollectionNames(ctx, bson.D{})
// names is a []string holding all the existing collection names
我需要使用方法 CollectionNames() 来列出数据库的所有集合。
我将不得不在 mongoDB:
中创建一个 sessionsess := ... // obtain session
db := sess.DB("") // Get db, use db name if not given in connection url
names, err := db.CollectionNames()
我在哪里可以找到在 MongoDB 中获取会话的示例?
我一直连接着下路的DB:
cliente_local, err := mongo.NewClient(options.Client().ApplyURI(cadena_conexion))
if err != nil {
log.Fatal(err)
}
ctx, cancelar = context.WithTimeout(context.Background(), 10*time.Second)
err = cliente_local.Connect(ctx)
if err != nil {
log.Fatal(err)
}
defer cancelar()
mongo_cliente = cliente_local.Database(DATABASE)
如何创建会话?
提前致谢!!
您似乎混淆/混淆了不同的 MongoDB 驱动程序。 DB.CollectionNames()
存在于 mgo
驱动程序中,该驱动程序较旧且未维护。
您使用的驱动程序是官方mongo-go
驱动程序,它有不同的获取现有集合列表的方法。
mongo-go
驱动有Database.ListCollectionNames()
方法,你可以这样使用:
names, err := mongo_cliente.ListCollectionNames(ctx, bson.D{})
// names is a []string holding all the existing collection names