Casbah版本:2.8.0
以下示例:http://api.mongodb.com/scala/casbah/2.0/tutorial.html#combining-multiple-dbobjects
我在下面使用了导入语句。
import com.mongodb.casbah.AggregationOutput
import com.mongodb.casbah.Imports._
import com.mongodb.casbah.TypeImports._
import com.mongodb.casbah.commons.{MongoDBList, MongoDBObject}
++
以下Cannot resolve symbol ++
错误。
val basic = MongoDBObject(
"id" -> "123",
"project" -> "pp123"
)
val createdTime = MongoDBObject(
"createdTime" -> MongoDBObject(
"$exists" -> false
)
)
val query = basic ++ createdTime
我试过谷歌,但没有找到多少,official documentation没有帮助......
我想我错过了++
的导入声明,但我不知道要导入哪一个。
答案 0 :(得分:1)
来源的快速grep显示了++
类上的两个MongoDBObject
方法:
> grep -r "def ++" .
./casbah-commons/src/main/scala/MongoDBObject.scala: def ++(pairs: (String, Any)*): DBObject = {
./casbah-commons/src/main/scala/MongoDBObject.scala: def ++[A <% DBObject](other: A): DBObject = {
第二个看起来与此相关。 <%
表示视图范围,因此您需要从MongoDBObject
到DBObject
进行隐式转换。
> grep -r "implicit .*: DBObject =" .
./casbah-commons/src/main/scala/Implicits.scala: implicit def map2MongoDBObject(map: scala.collection.Map[String, Any]): DBObject =
./casbah-commons/src/main/scala/Implicits.scala: implicit def unwrapDBObj(in: MongoDBObject): DBObject = in.underlying
您似乎可以导入com.mongodb.casbah.Implicits._
来获取此信息。