为什么$ eq在casbah中的行为与$ ne不同?
import com.mongodb.casbah.Imports._
object O{
val x = "user" $ne "bwmcadams" // Compile fine
val y = "user" $eq "bwmcadams" // fails to compile: value = is not a member of string
}
内置:
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>casbah-core_2.10</artifactId>
<version>2.6.0</version>
</dependency>
答案 0 :(得分:2)
在Casbah的更高版本中添加了$eq
运算符。尝试将Casbah版本更改为2.6.3。
答案 1 :(得分:0)
而不是$eq
,请尝试->
(作为常规元组)。 MongoDB中没有$eq
运算符:http://docs.mongodb.org/manual/reference/operator/query/ - 相等是默认运算符。
更新:看起来他们已经将这些转换从元组删除到DBObjects。试试常规地图:
val y: DBObject = Map("user" -> "bwmcadams")
更新2:请参阅cmbaxter的答案 - 他们确实在2013年7月添加了$eq
作为运算符,但您实际上并不需要使用它。