2016-11-13 11 views
0

Я новичок в mongodb и scala, и в настоящее время я использую Casbah в качестве моего драйвера для взаимодействия между ними на игровой платформе. Я не могу понять, какой тип данных возвращается collection.find(). Я пытаюсь создать функцию, которая возвращает результат collection.find(), и мне нужно указать тип возврата.Какой тип данных возвращается MongoCollection.find()?

Документация и моя IDE противоречат друг другу. Пример:

val collection = MongoClient("localhost", 27017)("databaseName")("collectionName") 

Я считаю, что коллекция выше MongoCollection. Но то, что тип данных возвращается

collection.find() 

Я пытаюсь написать следующее:

def getAllDocumentsInCollection(collectionName:String): DBCursor = { 
    val collection = getCollection(collectionName) 
    collection.find() 
    } 

Компилятор орет, гласящая возвращаемый тип collection.CursoryType, но я понятия не имею, как найти коллекцию .CursorType. import collection.CursorType не работает.

Документация из книги «Scala for Data science» говорит, что yes collection.find() возвращает collection.CursoryType, но не компилируется по причинам, указанным выше, и документация из Casbah говорит о ее типе DBCursor, но это не компилируется, потому что моя IDE говорит о типе collection.CursorType. Я собираюсь в кругах здесь ...

касбы Doc http://api.mongodb.com/scala/casbah/2.1.2/scaladoc/com/mongodb/casbah/MongoCollection.html

Scala Для Монго Doc https://books.google.com/books?id=NV8dDAAAQBAJ&pg=PA178&lpg=PA178&dq=type+collection.CursorType+scala&source=bl&ots=nx0tnnUw3z&sig=3BNzcU_46VBdl7hv1f-C0SELAY4&hl=en&sa=X&ved=0ahUKEwjmhoiC0abQAhVI8IMKHQeEAgsQ6AEIGzAA#v=onepage&q=type%20collection.CursorType%20scala&f=false

Scala Версия: 2.11.17

Casbah Версия: 3.1.1

Я запускаю игру и scala через активатор.

+0

В глубине души я знаю его волшебство Scala на работе. –

ответ

0

Какую версию scala вы используете? Кажется, вы используете старую версию casbah, лучше обновить ее, если сможете. Я не могу даже find casbash in maven repository

+0

scala 2.11.17 и casbah 3.1.1 –

+0

Итак, похоже, что он возвращает MongoCursor: 'val findAll: MongoCursor = collection.find()' – bynull

+0

Это не работает для меня. Как насчет тебя? –