Не удается прочитать свойство 'admin' из неопределенного - PullRequest
0 голосов
/ 09 июня 2018

У меня есть эта проблема, когда я нахожусь в административных маршрутах и ​​пытаюсь добавить новую статью или новое изображение в мою базу данных, то же самое происходит, даже когда я хочу что-то обновить .... это мои коды?

exports.isAdmin = (req, res, next) => {

    if (req.isAuthenticated() && res.locals.user.admin == 1) {
        next();
    } else {
        req.flash("danger", "please log in as admin");
        res.redirect("/users/login");
    }
}

var LocalStrategy = require("passport-local").Strategy;
var User = require("../models/user");
var bcrypt = require("bcryptjs");


module.exports = function (passport) {

    passport.use(new LocalStrategy(function (username, password, done) {

        User.findOne({ username: username }, function (err, user) {
            if (err)
                console.log(err);

            if (!user) {
                return done(null, false, { message: "No user found" });
            }

            bcrypt.compare(password, user.password, function (err, isMatch) {
                if (err) console.log(err);

                if (isMatch) {
                    return done(null, user);
                } else {
                    return done(null, false, { message: "Wrong password" });
                }
            })
        });

    }));

    passport.serializeUser(function (user, done) {
        done(null, user.id);
    });
    passport.deserializeUser(function (id, done) {
        User.findById(id, function (err, user) {
            done(err, user);
        });
    });
}

Кто-нибудь, кто может помочь с проблемой, я думаю, в res.locals.user.admin, но в других маршрутах администратора работает нормально, но только когда я хочу добавить новый и редактировать, думаю, что эта проблема

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...