node.js - NodeJS/ mongoDB assertion error -


so trying create webpage registers , sends confirmation email. im facing assertion error. tell me im going wrong , why error occurred?

p.s: censoring private information email, sendgrid id & pass thank you..

error:

    > test@0.0.0 start /library/nodejs/test > node ./bin/www   assert.js:86   throw new assert.assertionerror({         ^ assertionerror: missing path     @ module.require (module.js:363:3)     @ require (module.js:384:17)     @ object.<anonymous> (/library/nodejs/test/routes/newuser.js:3:16)     @ module._compile (module.js:460:26)     @ object.module._extensions..js (module.js:478:10)     @ module.load (module.js:355:32)     @ function.module._load (module.js:310:12)     @ module.require (module.js:365:17)     @ require (module.js:384:17)     @ object.<anonymous> (/library/nodejs/test/app.js:32:21)     @ module._compile (module.js:460:26)     @ object.module._extensions..js (module.js:478:10)     @ module.load (module.js:355:32)     @ function.module._load (module.js:310:12)     @ module.require (module.js:365:17)     @ require (module.js:384:17)  npm err! darwin 14.0.0 npm err! argv "node" "/usr/local/bin/npm" "start" npm err! node v0.12.5 npm err! npm  v2.11.2 npm err! code elifecycle npm err! test@0.0.0 start: `node ./bin/www` npm err! exit status 1 npm err!  npm err! failed @ test@0.0.0 start script 'node ./bin/www'. npm err! problem test package, npm err! not npm itself. npm err! tell author fails on system: npm err!     node ./bin/www npm err! can info via: npm err!     npm owner ls test npm err! there additional logging output above.  npm err! please include following file support request: npm err!     /library/nodejs/test/npm-debug.log 

app.js

var express = require('express'); var path = require('path'); var favicon = require('serve-favicon'); var logger = require('morgan'); var cookieparser = require('cookie-parser'); var bodyparser = require('body-parser'); var mongoose = require('mongoose'); var routes = require('./routes/index'); var users = require('./routes/users'); var fs=require("fs") var app = express(); var multer=require("multer"); var crypto=require("crypto"); // view engine setup app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'ejs');   // uncomment after placing favicon in /public //app.use(favicon(__dirname + '/public/favicon.ico')); app.use(logger('dev')); app.use(bodyparser.json()); app.use(bodyparser.urlencoded({ extended: false })); app.use(cookieparser()); app.use(express.static(path.join(__dirname, 'public'))); //mongoose.connect('mongodb://localhost/adithya');    app.use('/', routes); app.use('/users', users); app.use('/newuser', require('./routes/newuser'));   mongoose.connect('mongodb://localhost/registration', function(err) {     if(err) {         console.log('connection error', err);     } else {         console.log('connection successful');     } });    //multer     var done=false;  /*configure multer.*/      /* app.get('/users',function(req,res){    mongoose.model('users').find(function(err, users){      res.send(users);   }); });  */  fs.readdirsync(__dirname + '/models').foreach(function(filename) { if (~filename.indexof('js')) require(__dirname + '/models/' + filename)     console.log("fileread"); });    // catch 404 , forward error handler app.use(function(req, res, next) {   var err = new error('not found');   err.status = 404;   next(err); });  // error handlers  // development error handler // print stacktrace if (app.get('env') === 'development') {   app.use(function(err, req, res, next) {     res.status(err.status || 500);     res.render('error', {       message: err.message,       error: err     });   }); }  // production error handler // no stacktraces leaked user app.use(function(err, req, res, next) {   res.status(err.status || 500);   res.render('error', {     message: err.message,     error: {}   }); });   module.exports = app; 

index.js

    var express = require('express'); var multer = require("multer"); var router = express.router();   router.get('/', function(req, res) {   res.render('index.ejs', { title: 'express' }); });    module.exports = router; 

user.js (routes)

    var express = require('express'); var router = express.router(); var mongoose = require('mongoose'); var users = require("../models/users") /* users listing. */ router.get('/', function(req, res, next) {      console.log("inside function"); users.find(function(err, users){      res.send(users);   });  });  module.exports = router; 

user.js (models)

    var mongoose= require("mongoose"); var schema= mongoose.schema;  var usersschema = new schema({      username: string,     email: string,     password: string,     status: number });  mongoose.model("users",usersschema); 

newuser.js

    var express= require('express'); var router= express.router(); var mongoose = require(mongoose);  router.get('/', function(req, res) {      console.log("username : " + req.body.username+", email :  "+ req.body.email+ ", password :  " + req.body.password );  var newuser= users({      username: req.body.username,     email: req.body.email,     password: req.body.password,     status: '0'  });  newuser.save(function(err){ if(err) throw(err) var cryptr = require("./cryptr");     cryptr = new cryptr('mytotalysecretkey');     var encryptedstring = cryptr.encrypt(req.body.username);   var sendgrid  = require('sendgrid')("username", "password"); var email     = new sendgrid.email({   to:       req.body.email,   from:     'fromid',   subject:  'registration',   text:    "pls click on following link confirm https:/localhost:3000/confirmation?username="+ encryptedstring  }); sendgrid.send(email, function(err, json) {     if (err) { return console.error(err); }   console.log(json); });  res.send("ok");  }); });  

it simple, syntax error. typed in var mongoose = require(mongoose); instead of var mongoose = require("mongoose");my ide did not point out.

thank you


Comments