Mongoose and NodeJS: Creating a unique system-generated username Mongoose and NodeJS: Creating a unique system-generated username mongoose mongoose

Mongoose and NodeJS: Creating a unique system-generated username


All what you need to do is to add return statement before generateUniqueAccountName(proposedName):

function generateUniqueAccountName(proposedName) {  return Account    .findOne({accountName: proposedName})    .then(function(account) {      if (account) {        console.log('no can do try again: ' + proposedName);        proposedName += Math.floor((Math.random() * 100) + 1);        return generateUniqueAccountName(proposedName); // <== return statement here      }      console.log('proposed name is unique' + proposedName);      return proposedName;    })    .catch(function(err) {      console.error(err);      throw err;    });}