#mongodb
#mongodb
Вопрос:
Выполнив поиск в Интернете, я выяснил, что это способ проверить, существует ли документ уже.
function addSpam(spam){
MongoClient.connect(uri, function(err, db) {
if (err) throw err;
const dbo = db.db("database0");
const query = {link: spam};
const document = dbo.collection("spams").find(query).limit(1);
console.log(document);
db.close();
});
}
Теперь моя проблема в том, что возвращается курсор (как вы можете видеть в журнале вывода), я хотел бы вернуть bool, заранее спасибо. (был ли документ найден или нет)
Комментарии:
1. почему бы не выполнить тест if / else?
2. @Minsky курсор возвращается, когда я это делаю, я не могу использовать его как оператор. (действительно, он выходит из строя)
Ответ №1:
Я понял это:
function addSpam(spam){
MongoClient.connect(uri, function(err, db) {
if (err) throw err;
const dbo = db.db("database0");
const query = {"link": spam}; //spam is item to find inside a document and link is the field name of the document
dbo.collection("spams").find(query).toArray(function(err, result) {
if (err) throw err;
const docFound = result.length>0;
console.log(docFound);
db.close();
});
})};
Вероятно, есть лучший метод, чем этот, но теперь он работает нормально.