Я пытаюсь написать скрипт mongo из оболочки mongo, но у меня небольшая проблема. Я дам код объяснить сам.Как выполнить запрос mongodb в функции mongodb?
var shops = db.Shop.find({})
function printShopUrl(data) {
var name, url;
for (var i = 0; i < data.length(); i++) {
name = data[i].name;
url = db.Instance.findOne({name:name}).url;
print(url);
}
}
printShopUrl(shops)
Так что все, что я пытаюсь сделать прямо сейчас, это просто напечатать URL, но когда я запускаю этот запрос, я получаю сообщение об ошибке.
TypeError: db.Instance.findOne({name:name}) has no properties (shell):1
Любая идея, что я делаю неправильно?
Похоже, что запрос не находит ничего, и в этом случае он вернет null. Распечатайте промежуточный результат 'db.Instance.findOne ({name: name})' - что вы видите? – YXD
спасибо г-ну Э, это была именно та проблема, которая у меня была. я попытался ответить на свой вопрос, но у меня не было достаточного количества очков. поэтому я отправлю свое решение здесь. .. я думаю, я не могу, это слишком долго, но да, все, что я сделал, было обернуть его в попытку поймать, и это работает. – Khon
try catch is over just just 'if (result) print (result.url);' – YXD