Como juntar duas coleções no mangusto

Eu tenho dois esquemas definidos como abaixo:

var WorksnapsTimeEntry = BaseSchema.extend({
 student: {
     type: Schema.ObjectId,
     ref: 'Student'
 },
 timeEntries: {
     type: Object
 }
 });

var StudentSchema = BaseSchema.extend({
firstName: {
    type: String,
    trim: true,
    default: ''
    // validate: [validateLocalStrategyProperty, 'Please fill in your first name']
},
lastName: {
    type: String,
    trim: true,
    default: ''
    // validate: [validateLocalStrategyProperty, 'Please fill in your last name']
},
displayName: {
    type: String,
    trim: true
},
municipality: {
    type: String
    }
});

E eu gostaria de percorrer cada aluno e mostrar suas entradas de tempo. Até agora, tenho esse código que obviamente não está certo, pois ainda não sei como ingressar na tabela de esquema do WorksnapTimeEntry.

Student.find({ status: 'student' })
        .populate('student')
        .exec(function (err, students) {
            if (err) {
                return res.status(400).send({
                    message: errorHandler.getErrorMessage(err)
                });
            }
            _.forEach(students, function (student) {
               // show student with his time entries....
            });
            res.json(students);
        });

Alguém sabe como faço para conseguir isso?

questionAnswers(2)

yourAnswerToTheQuestion