使用反应 Mongo 删除数据库
Drop database with reactive Mongo
我需要使用 ReactiveMongo 删除 Mongo 数据库。由于 ReactiveMongo 没有为此提供专门的 API,我决定使用 "runCommand" 函数。
这是在 Mongo shell 中删除数据库的方法:
> db.runCommand("dropDatabase")
{ "dropped" : "123", "ok" : 1 }
但是当我尝试对 Reactive 做同样的事情时 Mongo:
val runner = Command.run(BSONSerializationPack)
val dbDropDoc = BSONString("dropDatabase")
val dbDropResult = runner.apply(db, runner.rawCommand(dbDropDoc)).one[BSONDocument]
我收到以下编译错误:
[error] ...: could not find implicit value for parameter writer: runner.pack.Writer[reactivemongo.bson.BSONString]
[error] val dbDropResult = runner.apply(db, runner.rawCommand(dbDropDoc)).one[BSONDocument]
[error]
我应该如何修复我的代码?
有更简单的方法:DefaultDB.drop()。
def foo(myDB: DefaultDB): Future[Unit] = myDB.drop()
我需要使用 ReactiveMongo 删除 Mongo 数据库。由于 ReactiveMongo 没有为此提供专门的 API,我决定使用 "runCommand" 函数。
这是在 Mongo shell 中删除数据库的方法:
> db.runCommand("dropDatabase")
{ "dropped" : "123", "ok" : 1 }
但是当我尝试对 Reactive 做同样的事情时 Mongo:
val runner = Command.run(BSONSerializationPack)
val dbDropDoc = BSONString("dropDatabase")
val dbDropResult = runner.apply(db, runner.rawCommand(dbDropDoc)).one[BSONDocument]
我收到以下编译错误:
[error] ...: could not find implicit value for parameter writer: runner.pack.Writer[reactivemongo.bson.BSONString]
[error] val dbDropResult = runner.apply(db, runner.rawCommand(dbDropDoc)).one[BSONDocument]
[error]
我应该如何修复我的代码?
有更简单的方法:DefaultDB.drop()。
def foo(myDB: DefaultDB): Future[Unit] = myDB.drop()