gpt4 book ai didi

scala - 如何检索 Mongodb 集合中的所有对象,包括 id?

转载 作者:IT老高 更新时间:2023-10-28 13:37:16 25 4
gpt4 key购买 nike

我正在使用 CasbahSalat创建我自己的 Mongodb dao 并实现 getAll 方法,如下所示:

val dao: SalatDAO[T, ObjectId]    
def getAll(): List[T] = dao.find(ref = MongoDBObject()).toList

我想知道的是:

  1. 有没有更好的方法来检索所有对象?
  2. 当我遍历对象时,我找不到对象的 _id。是否排除在外?如何将其包含在列表中?

最佳答案

1°/ModelCompanion trait 提供了一个 def findAll(): SalatMongoCursor[ObjectType] = dao.find(MongoDBObject.empty) 方法。您必须为数据库拥有的每个集合执行专门的请求。

如果您迭代返回的对象,最好使用 dao.find 返回的 SalatMongoCursor[T] 进行迭代,而不是进行两次迭代(一次使用 Iterator 特征中的 toList 然后在 List[T] 中使用另一个)。

2°/Salat 将 _id 键映射到您的类 id 字段。如果您使用 id: ObjectId 字段定义类。该字段使用 mongo _id 键映射。您可以使用 Salat documentation 中指出的 @Key 注释来更改此行为。

关于scala - 如何检索 Mongodb 集合中的所有对象,包括 id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11390625/

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