mongodb mongoose aggregation-framework

Proyectar el primer elemento en una matriz a un nuevo campo(agregación de MongoDB)



mongoose aggregation-framework (1)

Puedes usar arrayElemAt :

{ $project: { user: { $arrayElemAt: [ "$users", 0 ] }, otherField: 1 }},

Estoy usando la agregación de Mongoose (MongoDB versión 3.2).

Tengo un campo de users que es una matriz. Quiero $project primer elemento de esta matriz a un nuevo user campo.

Lo intenté

{ $project: { user: ''$users[0]'', otherField: 1 }}, { $project: { user: ''$users.0'', otherField: 1 }}, { $project: { user: { $first: ''$users''}, otherField: 1 }},

Pero tampoco funciona.

¿Cómo puedo hacerlo correctamente? Gracias