私はplay2とreactivemongoを使ってmongodbから結果を取得しています。結果の各項目を変換して、メタデータを追加する必要があります。その後、ソートを適用する必要があります。
私が使用する変換ステップに対処するにはenumerate()
:
def ideasEnumerator = collection.find(query)
.options(QueryOpts(skipN = page))
.sort(Json.obj(sortField -> -1))
.cursor[Idea]
.enumerate()
次に、次のように Iteratee を作成します。
val processIdeas: Iteratee[Idea, Unit] =
Iteratee.foreach[Idea] { idea =>
resolveCrossLinks(idea) flatMap { idea =>
addMetaInfo(idea.copy(history = None))
}
}
最後に、Iteratee にフィードします。
ideasEnumerator(processIdeas)
そして今、私は立ち往生しています。私が見たすべての例は、println
内部foreach
で何らかの処理を行っていますが、最終結果は気にしていないようです。
では、すべてのドキュメントが返されて変換されると、どうすればシーケンス、リスト、またはさらに処理できるその他のデータ型を取得できるのでしょうか?