MongoDB に次のようなドキュメントがあります。
{"_id":"asdf", "data":[
{"a":"1","b":"2"},
{"a":"3","b":"4"},
{"a":"5","b":"6"},
]}
Scala を使用してそのオブジェクトにクエリを実行し、「データ」のエントリをケース クラスのリストに変換したいと考えています。数時間の作業の後、私はまだコンパイルさえできるものを思い付いていません。誰かがこの情報を含むチュートリアルを教えてもらえますか? このチュートリアルは役に立ちませんでした。ネストされたマップ、fors、foreaches、キャスト、およびパターン マッチングの可能な組み合わせをすべて試しました。
編集:私の非常に醜いが、今では一見動作するコードは次のとおりです。
def getData(source_id:String) = {
val source = collection.findOne(MongoDBObject("_id" -> source_id)).get
val data = source.get("data").asInstanceOf[BasicDBList]
var ret:List[Data] = List()
val it = presses.iterator
while(it.hasNext) {
val item = it.next.asInstanceOf[BasicDBObject]
ret = Data(
item.get("a").asInstanceOf[String],
item.get("b").asInstanceOf[String]
) :: ret
}
ret
}
もっといい方法があると誰か教えてください。