У меня есть 1 проблема и 1 вопрос при использовании BSONDocument getAs.BSONDocument.getAs issue
Всякий раз, когда я пытаюсь получить доступ к значению л в формате ниже, вызвав этим:
docFound.getAs[Int]("v.1.0.2013.9.9.l")
он возвращает None. Однако если я это сделаю:
docFound.getAs[BSONDocument]("v")
он returtns действительный BSONDocument для всего раздела v. Что не так в моем первом звонке? Поддерживает ли поиск пути?
BSONDocument: {
v: {
1.0: {
2013: {
9: {
9: {
l: BSONInteger(0),
s: BSONInteger(8)
}
}
}
}
}
}
Второй вопрос: я найти документ в БД с помощью следующего фильтра:
BSONDocument(
"_id" -> 0,
"v.1.0.2013.9.9.l" -> 1)
Но, похоже, вместо того, чтобы извлекать только эти значения «_id» & «л» он извлекает весь документ. Когда я делаю BSONDocument.pretty (foundDoc), я вижу весь документ, а не только значение «l», которое я запросил. Просьба уточнить, стоит ли даже указывать поля, которые меня интересуют, если он всегда загружает весь документ.
Спасибо.
Думаю, вы не должны использовать пунктирные ключи (как в '1.0'). –
Они поддерживаются MongoDB, поэтому я полагаю, что я свободен в использовании. Однако я понимаю, что в идеале я не должен вмешиваться в вложенное структурирование. –