Mongodb-native (la bibliothèque cliente que vous utilisez) ne générera pas d'erreur si votre recherche n'a renvoyé aucun document. Les erreurs sont réservées aux problèmes de connectivité ou de syntaxe.
Par conséquent, vous devez tester l'existence de la variable avant de l'utiliser, quelque chose comme :
Template.findOne({ name: templateName }, function (err, template) {
if (err === null && template == null) {
// no error, but no result found
err = new Error(templateName + ' not found');
}
if (err) {
console.log('Error occured');
console.log(err.message);
// early return to avoid another indentation :)
return callback(err);
}
template_subject = template.subject;
template_html = template.dataMsg;