javascript - 如何使用猫鼬的“包含”
问题描述
我想检查我的数据库,其中包含“喜欢”字段作为数组类型,所以我在猫鼬文档中遇到了这个,但我实际上并不知道如何使用它: https://mongoosejs.com/docs/api/array。 html#mongoosearray_MongooseArray-includes
这是我刚刚尝试过的
Products.find({_id:uniqueId}, {$includes:{likes:req.user._id}}, function(err, result){......})
解决方案
到你的形象:
抱怨是因为您使用了Products.find
. 当您传入两个对象时,它期望第二个对象是一个投影。Projection 从返回的文档中选择字段,只获取您需要的字段。
尝试使用 uniqueId 获取产品(我希望是 productId ...)。
Product.findById(productId, function (err, result) { // callback })
在回调中,您可以检查您的 userId 是否包含在 likes 数组中。
推荐阅读
- jquery - 滚动停止时使用什么缓动值来平滑减速
- flask-sqlalchemy - 带有 db 模型的循环导入的烧瓶 sqlalchemy
- python - 如何通过字符串变量迭代读取 Pandas Dataframe 列信息
- string - 如何将索引开始到文本文件中的不同位置?
- data-binding - 当值为“”Angular 6时从对象中删除一个属性
- r - 如何在有条件的情况下使用 expand.grid?
- google-cloud-functions - Firebase 图片调整大小扩展的问题
- c# - 如何使用 for each 将多个对象添加到数据库中
- reactjs - 通过事件处理程序将组件添加到渲染树,该组件似乎没有收到新的道具。为什么是这样?
- c# - 将数据绑定到 Datagridview 的特定列 - 实体框架