我想知道是否可以根据相关文档中的值在数据库中找到所有文档?
(我正在使用猫鼬)
var tagSchema = mongoose.Schema({
tagname: String,
});
var Product = new Schema({
title : String,
description : String,
price : Number,
tags: [{
type: mongoose.Schema.Types.ObjectId,
ref: "Tag"
}]
});
是否有任何方法可以根据标记名值选择我想要的产品?
我读了一些有关populate()的帖子,但这似乎不是解决方法。
一种方法是先填充所有内容,然后根据标签进行查找...但是有可能吗?
根据相关标签选择产品的最佳方法是什么?
非常感谢:)
答案 0 :(得分:0)
尝试一下:
const selectByTagname = (tagname) => {
Product.find({})
.populate('tags')
.exec()
.then(function(docs) {
let found = [];
docs.map(function(doc) {
doc.tags.map(tags => {
if(tags.tagname == tagname ) found = doc;
})
})
return found;
})
.then(foundDocs => console.log(foundDocs))
.catch(err => err);
}