I'm learning scala and mongodb at present and using the play! framework, so I'm making all sorts of mistakes as I get my head around things. Currently I have a scala object that returns a list of database objects returned from a mongodb query via casbah as follows;
object Alerts { def list() : List[DBObject]= { val collection = MongoDatabase.collection; val query = MongoDBObject.empty val order = MongoDBObject("Issue Time:" -> -1) val list = collection.find(query).sort(order).toList list } ... }
Elsewhere in my code I wish to output the List of objects in Json - so I have;
val currentAlerts = Alerts.list() What I'd like to write is something like;
val resultingJson = currentAlerts.toJson But when I do this, I understandably get the following error;
value toJson is not a member of List[com.mongodb.casbah.Imports.DBObject] My question is - what's the right way to convert a List of com.mongodb.casbah.Imports.DBObject into Json for output?
EDIT:
For clarity, what I really want to do is the equivalent of
val listInJson = collection.find(query).sort(order).toJson In the same way that I CAN write
val listAsString = collection.find(query).sort(order).toString