Mongodb-native (клиентската библиотека, която използвате) няма да предизвика грешка, ако вашата находка не е върнала никакъв документ. Грешките са запазени за проблеми със свързването или синтаксиса.
Следователно трябва да тествате съществуването на променливата, преди да я използвате, нещо като:
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;