2015-10-29 4 views
0

У меня есть Order документ, как это:проекция MongoDB ссылается документ

{ "_id" : ObjectId("55fdd76fe4b08bcb851be855"), "customer" : DBRef("customer", ObjectId("55fdd76fe4b08bcb851be853")) } 

И я хотел бы «распечатку» имена ссылочного клиента, как это:

db.order.find({}, {"customer.firstName":1}) 

Но это, кажется, не Работа. Точечная нотация работает для subdocuments, но не для referenced документов.

Есть ли способ «присоединиться» к этим таблицам или просто сообщить оболочке mongo для получения документа клиента?

+0

Вам нужно взять документ. – sergiuz

ответ

0

forEach() метод на find() курсора может быть полезно при загрузке ссылки клиента. Что-то вроде следующего:

db.orders.findOne().forEach(function (order){ 
    var customer = db[order.$ref].findOne({"_id": order.$id}); 
    printjson(customer.firstName); 
}); 
Смежные вопросы