Это пример документа, который у меня в 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);
});
});
Этот поиск «Код» не работает (это где мне нужна помощь):
// 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
да извините. Например, ищите все продукты, которые они имеют в своем описании, слово «парк». И отправьте слово, как в приведенном выше примере, я отправляю sku – Despotars