gpt4 book ai didi

scala - 在 casbah 的 find() 查询中使用 $in

转载 作者:行者123 更新时间:2023-12-01 09:32:24 24 4
gpt4 key购买 nike

我正在尝试在 find() 中使用 casbah 的流畅查询。

我的数据是这样的:

{ "_id" : ObjectId("4d7b26efc58bf2b18f14d9cd"), "srcID" : [ "/m/05zppz" ], "relation" : [ "/location/location/people_born_here" ], "dstID" : [ "/m/06sfnt9" ] }
{ "_id" : ObjectId("4d7b26efc58bf2b19014d9cd"), "srcID" : [ "/m/05zppz" ], "relation" : [ "/location/location/people_born_here" ], "dstID" : [ "/m/06fqp8" ] }
{ "_id" : ObjectId("4d7b26efc58bf2b19114d9cd"), "srcID" : [ "/m/05zppz" ], "relation" : [ "/location/location/people_born_here" ], "dstID" : [ "/m/06_7xfd" ] }

我写了下面的代码来查询这个:

val srcIDs:List[String] = List("/m/05zppz", "/m/06sfnt9")
val query = "srcID" $in srcIDs

代码段编译不通过报错:

error: value $in is not a member of java.lang.String
query = ("srcID" $in srcIDs)

casbah 文档中有 $in 的上述语法,但它似乎不起作用。如何使 $in 查询工作?事实上,我无法使用 Casbah 的 DSL 进行任何流畅的查询,并且它们无法给出相同的错误消息。请帮忙!

最佳答案

问题是 $in 不是在字符串上定义的方法。 Casbah 很可能定义了从 String 对象到包含方法 $in 的类实例的隐式转换。隐式转换需要先导入作用域,然后才能使用。

您能否向我们指出介绍 $in 方法的 Casbah 文档?这就是我们将找到需要导入的内容的地方。

(对于专家:$ 不是应该保留给编译器生成的字段吗?)

关于scala - 在 casbah 的 find() 查询中使用 $in,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6960546/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com