recherche

Maison  >  Questions et réponses  >  le corps du texte

c++ - mangouste obtenir la structure arborescente

La structure est la suivante

var LabelSchema = new mongoose.Schema({
  name: String,
  parent: {type: ObjectId, ref: 'Label', default: null},
  children: [{type: ObjectId, ref: 'Label'}]
})

J'espère obtenir l'arborescence complète en une seule fois

Label.find({parent: null})
    .populate('children')
    .exec(function(err, labels) {
      if (err) {
        console.log(err)
      }
      // res.send('test')
      res.send({
        msg: true,
        result: labels
      })
    })

La méthode populate est utilisée, mais seule la référence enfant de premier niveau peut être obtenue. L'enfant de deuxième niveau est toujours l'objectId. En plus de trouver l'objet via l'objectId, existe-t-il un autre moyen plus simple d'obtenir l'objectId. arborescence complète ?

高洛峰高洛峰2769 Il y a quelques jours776

répondre à tous(1)je répondrai

  • 高洛峰

    高洛峰2017-05-02 09:27:52

    J'ai trouvé la solution, remplissez d'abord quand je la trouve

    pointSchema.pre('find', function(next) {
      this.populate('children')
      next()
    })

    répondre
    0
  • Annulerrépondre