2
这是文件的例子,我在我的MongoDB:寻找不同类型的一个MongoDB的文档与Mongoskin
{
"_id": ObjectId('5525039895884d66710d0fc3'),
"prid": "63527",
"data": {
"sku": "HF22-81639",
"name": "Product Test",
"ean": "8763900872512",
"description": "This product is my first test",
}
}
我要打几个搜索方法,其中搜索标准是由SKU,EAN搜索或PRID。我创建了这些方法但不起作用,这是我创建的一种方法的示例,它不起作用,只是找到我的数据库的第一个文档,但没有任何搜索条件。
此搜索 “_id” 如果它完美的作品:
// GET - "_id"
app.get("/:id", function(req, res, next) {
req.collection.findOne({
_id: id(req.params.id)
}, function(e, result) {
if(e) return next(e);
res.send(result);
});
});
此搜索 “SKU” 不工作(这就是我需要帮助):
// GET - "sku"
app.get("/sku/:id", function(req, res, next) {
req.collection.findOne({
sku: id(req.params.sku)
}, function(e, result) {
if(e) return next(e);
res.send(result);
});
});
非常感谢你,这是最好的解决办法!但是,我有一个问题,如果我有一个描述字段,并且我想在每个产品的文本中查找一个字词?它会怎样? – Despotars
@Despotars你能更清楚一点吗?一个例子会很好。从我的理解来看,你的意思是说,比如说,你想在集合中搜索描述字段包含产品名称的文档,例如'db.collection.findOne({“data.description”:/ productname/i })'? – chridam
对不起。例如,在他们的描述中查找所有产品中的“park”一词。然后发送上述示例中的单词,我发送sku – Despotars