2013-11-07 4 views
0

У меня есть следующие модели:Нетерпеливого Fetch имеет-много отношения с помощью NodeJS/Mongoose

LeaderSchema = new app.mongoose.Schema({ 
    email: String, 
    projects: [{ type: app.mongoose.Schema.ObjectId, ref: 'Project'}] 
}); 

ProjectSchema = new app.mongoose.Schema({ 
    name: { type: String, required: true}, 
    leader: { type: app.mongoose.Schema.ObjectId, ref: 'Leader'} 
}); 

Leader = app.mongoose.model('Leader', LeaderSchema); 
Project = app.mongoose.model('Project', ProjectSchema); 

То, что я хочу делать в контроллере для извлечения всех проектов с ее соответствующими руководителями:

projects_controller .js:

module.exports = function(app) { 
    app.ProjectsController = { 
     index: function(req, res) { 
      app.Project.find(function(err, projects) { 
       res.send(projects) 
      }) 
     } 
    } 
} 

Но это дает в результате список проектов только с идентификатором своего лидера

Есть ли способ сделать мангуст с нетерпением взять лидеров?

ответ

0

Хотя я хотел бы решение, которое определяет нетерпеливое поведение нагрузки на модели, решение я нашел использую populate:

app.Project.find().populate('user').exec(function(err, projects) { 
    res.send(projects) 
}) 

Документацию для populate можно найти here at mongoosejs.com.

 Смежные вопросы

  • Нет связанных вопросов^_^