insert方法可以接受任何List,但是为了将数据存储在Mongo中,casbah需要将其转换为DBObject。为此,它使用隐式转换,casbah 中可用于各种数据类型。但是,您尝试插入的数据在您的范围内没有实施或可用的转换。要解决这个问题,要么导入隐式转换器,要么实现一个。
在您的情况下,您可能缺少导入。确保您拥有:
import com.mongodb.casbah.Imports._
并尝试更换listObjects
by MongoDBList(listObjects:_*)
EDIT:
要回答您的评论,请尝试使用 REPL:
scala> val a = List(1,2,3,4,5,6)
a: List[Int] = List(1, 2, 3, 4, 5, 6)
scala> List(a:_*)
res0: List[Int] = List(1, 2, 3, 4, 5, 6)
scala> List(a)
res1: List[List[Int]] = List(List(1, 2, 3, 4, 5, 6))
The :_* https://stackoverflow.com/questions/6051302/what-does-colon-underscore-star-do-in-scala将获取元素而不是列表并避免创建列表的列表。