Возможно ли переименовать поля в выводах запроса Mongo в PyMongo?

У меня есть некоторые документы в Mongo:

{"name" : "John", "age" : 26}
{"name" : "Paul", "age" : 34}
{"name" : "George", "age" : 36}

и другая функция, которая ожидает документы вида:

{"name" : "XXX", "value" : YY}

Можно ли переименовать поле "возраст" в "значение" в запросе поиска в PyMongo?

Ответ 1

Я бы использовал метод aggregate с оператором $project.

Из веб-документов mongodb.

Вы также можете использовать $project для переименования полей. Рассмотрим следующее Пример:

db.article.aggregate(
 { $project : {
     title : 1 ,
     page_views : "$pageViews" ,
     bar : "$other.foo"
 }} );`

например.

db.mycol.aggregate({ $project : { name:1, value:"$age" }});

см. http://docs.mongodb.org/manual/reference/aggregation/#_S_project