Nodejs + mongodb: ¿Cómo consultar los campos $ ref?
Estoy usando MongoDB con un servicio REST nodejs que expone mis datos almacenados en el interior. Tengo una pregunta acerca de cómo interrogar mis datos que usa $ ref.
Aquí hay una muestra de un objeto que contiene una referencia a otro objeto (detalle) en otra colección:
{
"_id" : ObjectId("5962c7b53b6a02100a000085"),
"Title" : "test",
"detail" : {
"$ref" : "ObjDetail",
"$id" : ObjectId("5270c7b11f6a02100a000001")
},
"foo" : bar
}
En realidad, usando Node.js y mongodb module, hago lo siguiente:
db.collection("Obj").findOne({"_id" : new ObjectID("5962c7b53b6a02100a000085"},
function(err, item) {
db.collection(item.$ref).findOne({"_id" : item.$id}, function(err,subItem){
...
});
});
De hecho hago 2 consultas, y obtengo 2 objetos. Es un tipo de "carga perezosa" (no exactamente pero casi)
Mi pregunta es simple: ¿es posible recuperar todo el gráfico de objetos en una consulta?
Gracias