Я храню некоторые данные в mongodb и получаю его с помощью js/nodejs и mongoose. Я могу использовать .find(), чтобы найти что-то в базе данных просто отлично, это не проблема. В чем проблема, если нет чего-то, я бы хотел сделать что-то еще. В настоящее время это то, что я пытаюсь:Сделайте что-нибудь, если ничего не найдено с .find() mongoose
UserModel.find({ nick: act.params }, function (err, users) {
if (err) { console.log(err) };
users.forEach(function (user) {
if (user.nick === null) {
console.log('null');
} else if (user.nick === undefined) {
console.log('undefined');
} else if (user.nick === '') {
console.log('empty');
} else {
console.log(user.nick);
}
});
});
Ни один из этого огня, когда я что-то где act.params не будет в индексе нику. Я не получаю ничего, чтобы консоль вообще, когда это случается, но я действительно получаю user.nick, чтобы регистрироваться только отлично, когда это на самом деле там. Я просто попытался сделать это в обратном порядке, как это:
UserModel.find({ nick: act.params }, function (err, users) {
if (err) { console.log('noooope') };
users.forEach(function (user) {
if (user.nick !== '') {
console.log('null');
} else {
console.log('nope');
}
});
});
, но это еще не войти nope
. Что мне здесь не хватает?
Если он не находит его, он просто пропускает все в поиске, что хорошо, за исключением того, что мне нужно делать что-то потом, если этого не происходит, если я не хочу этого делать. :/
Сделал это для объяснения разницы в том, что возвращается между 'find()' и 'findOne()' и ответом! – Rob