0
DBOBJECT在官方Casbah guide on querying它說卡斯巴返回,而不是MongoDBObject
findOne返回一個選擇 - 要麼有些(MongoDBObject)或無
然而,findOne
居然給了我一個Option
搭配素色Some(DBObject)
改爲:
scala> MongoClient("localhost", 27017)("db")("collection").findOne()
res0: Option[com.mongodb.DBObject] = Some({ "_id" : { "$oid" : "559860491b07c0dc5b52f3ee"} , "description" : "Some text" })
同樣的情況發生在find
,它會通過DBObject
實例返回一個迭代器。經過幾個小時的搜索和抓撓我的頭,我很茫然。
這是怎麼回事?我仍然在學習Scala,因此可能會有一些細微差別,我沒有得到。
的例子在[教程](http://api.mongodb.org/scala/casbah/2.0/ tutorial.html)返回普通的'DBObject's,所以這可能只是文檔中的錯誤?我認爲casbah提供了'DBObject'和'MongoDBObject'之間的隱式(自動)轉換 - 參見[here](https://osdir.com/ml/mongodb-user/2011-02/msg02745.html)和[here] (http://api.mongodb.org/scala/casbah/2.0/tutorial.html#mongodbobject-a-scala-ble-dbobject-implementation) – DNA
你是對的,謝謝!我錯過的是'com.mongodb.casbah.Imports._'的導入,隱式轉換在那之後工作。我希望他們能夠在指南中做得更清楚。 – James
太棒了! - 我會添加一個答案... – DNA