[nodemon] starting node app.js
(node:11472) DeprecationWarning:
open()is deprecated in mongoose >= 4.11.0, useopenUri()instead, or set theuseMongoClientoption if usingconnect()orcreateConnection(). See http://mongoosejs.com/docs/4.x/docs/connections.html#use-mongo-client (node:11472) DeprecationWarning: Mongoose: mpromise (mongoose's default promise library) is deprecated, plug in your own promise library instead: http://mongoosejs.com/docs/promises.html Server started on port 3000 Connected to MongoDB events.js:287 throw er; // Unhandled 'error' event ^TypeError: Cannot read property 'title' of null at C:\Users\user\desktop\current\Nodejs-Course-file-master\cmscart\routes\pages.js:17:25 at model.Query. (C:\Users\user\desktop\current\Nodejs-Course-file-master\cmscart\node_modules\mongoose\lib\model.js:4093:16) at C:\Users\user\desktop\current\Nodejs-Course-file-master\cmscart\node_modules\kareem\index.js:273:21 at C:\Users\user\desktop\current\Nodejs-Course-file-master\cmscart\node_modules\kareem\index.js:131:16 at processTicksAndRejections (internal/process/task_queues.js:79:11) Emitted 'error' event on Function instance at: at model.Query. (C:\Users\user\desktop\current\Nodejs-Course-file-master\cmscart\node_modules\mongoose\lib\model.js:4095:13) at C:\Users\user\desktop\current\Nodejs-Course-file-master\cmscart\node_modules\kareem\index.js:273:21 at C:\Users\user\desktop\current\Nodejs-Course-file-master\cmscart\node_modules\kareem\index.js:131:16 at processTicksAndRejections (internal/process/task_queues.js:79:11)
code is mentioned below:
var express = require('express');
var router = express.Router();
// Get Page model
var Page = require('../models/page');
//GET request
router.get('/', function(req, res) {
Page.findOne({
slug: 'home'
}, function(err, page) {
if (err)
console.log(err);
res.render('index', {
title: page.title,
content: page.content
});
});
});
//GET request
router.get('/:slug', function(req, res) {
var slug = req.params.slug;
Page.findOne({
slug: slug
}, function(err, page) {
if (err)
console.log(err);
if (!page) {
res.redirect('/');
} else {
res.render('index', {
title: page.title,
content: page.content
});
}
});
});
// Exports
module.exports = router;
pageon line 17 isundefined. your if statement on lines 14-15 is only logs error to console, which we can't see. Sometimes DB clients are not sending error back when there is nothing in DB for specific key, but instead return empty object, or maybeundefined(I haven't seen this in my life)... Tryconsole.log(page)prior to line 17 to see what you actually have aspageobject. - zmii:slughandler below one that throws an error you haveif (!page) { res.redirect('/'); }. I suggest you have the same in the first handler. - zmii