hbuilder x 如何查找文档对应元素
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hbuilder x 如何查找文档对应元素相关的知识,希望对你有一定的参考价值。
参考技术A点击头部导航栏的“运行”,选择谷歌浏览器。
在谷歌浏览器界面中按F12键,就可以查看源代码、样式和来源。
点击中间的不同样式可以在左侧查看选中的块,在最右侧的样式里就可以看你设置的属性,右侧的最边边有文档引用的路径。
如何使用 Mongoose 查找数组元素?
【中文标题】如何使用 Mongoose 查找数组元素?【英文标题】:How to find array elements with Mongoose? 【发布时间】:2017-12-05 23:13:57 【问题描述】:我在 Mongoose 模型中有一个数组作为子文档,定义如下:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var schema = Schema(
author: type: Schema.Types.ObjectId, ref: 'Author' ,
pages: [
number: Number,
type: type: String, enum: ['boring', 'fun'],
]
);
module.exports = mongoose.model('Book', schema);
现在我想获取某个作者在所有书籍中的'fun'
页总数。我发现许多类似的问题(和答案)讨论了如何在这种情况下找到带有有趣页面的Book
s,但是我想获得所有有趣页面的数组,或者至少是该数组的长度,但如果可能的话我会喜欢得到数组本身。我该怎么做?
谢谢,
【问题讨论】:
尝试(未经测试,如果正确将添加为答案): Book.aggregate( $unwind: "$pages" , $group: _id: "$pages.type", count : $sum: 1 ) @nadavvadan 谢谢!似乎它正在工作。但我刚刚意识到我需要再过滤一次,而不是所有书籍,我只需要从某个作者的书籍中进行选择。如果问的不多,能否请您也补充一下? :) 再次感谢, 试试这个:Book.aggregate( $match: author: ObjectId("12-bytes-of-hex") , $unwind: "$pages" , $group : _id: "$pages.type", count: $sum: 1 ) 【参考方案1】:我相信,除了语法,这是不言自明的:
Book.aggregate(
$match:
author: ObjectId("12-bytes-of-hex")
,
$unwind: "$pages" ,
$group:
_id: "$pages.type",
count: $sum: 1
)
【讨论】:
我没看懂,这个是怎么根据type=='fun'
过滤页面的?
它并没有做到这一点;它按页面类型对页面进行分组,并对每个组进行计数。您也可以使用 mongo 的 mapReduce 框架来获取“有趣”页面类型的页面计数,但我相信上述解决方案更简单。以上是关于hbuilder x 如何查找文档对应元素的主要内容,如果未能解决你的问题,请参考以下文章