使用反应 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()