文章详情页
javascript - mongoose获取树形结构
问题描述
结构如下
var LabelSchema = new mongoose.Schema({ name: String, parent: {type: ObjectId, ref: ’Label’, default: null}, children: [{type: ObjectId, ref: ’Label’}]})
希望一次性获取完整的树形结构
Label.find({parent: null}) .populate(’children’) .exec(function(err, labels) { if (err) {console.log(err) } // res.send(’test’) res.send({msg: true,result: labels }) })
使用了populate方法,但是只能获取第一层的childern引用,第二层的childern仍然是objectId;除了自己通过objectId查找对象,还有没有其他更简便的方法获取完整树形结构?
问题解答
回答1:找到解决方法了,在find的时候先populate
pointSchema.pre(’find’, function(next) { this.populate(’children’) next()})
标签:
JavaScript
相关文章:
1. debian - docker依赖的aufs-tools源码哪里可以找到啊?2. java基础,求解答。3. 如何调整IDEA中直接运行java程序的日志输出级别?4. css - 关于input标签disabled问题5. css3中translate(-50%,-50%)对 transform-origin的奇葩影响?6. java - 为什么要将Runnable接口的子类对象传递给Thread的构造函数?7. docker api 开发的端口怎么获取?8. javascript - vue 数据更新了。但是dom没有更新,,,,,如图9. html5 - 百度Ueditor代码高亮和代码段滚动条冲突是怎么回事?10. javascript - 静态页面引公共头尾文件,js怎么写吖?
排行榜