Я пытался использовать на моем сервере локальный-паспортный goose. делал этот сервер с помощью обучающего видео. в обучающем видео этот же код работает отлично, но в моем случае он не работает. Хотя моя база данных подключена к mongodbatlas. но я получаю сообщение об ошибке «Первый параметр для schema.plugin()
должен быть функцией», Снимок экрана с ОШИБКОЙ
Интересно, как мне использовать плагин в качестве функции! пробовал искать везде, но ничего полезного. Ниже приведен код
const express = require("express");
const mongoose = require("mongoose");
const session = require("express-session");
const passport = require("passport");
const passportLocalMongoose = ("passport-local-mongoose");
const app = express();
app.use(session({
secret: "alpha beta gama",
resave: false,
saveUninitialized: false
}));
app.use(passport.initialize());
app.use(passport.session());
mongoose.connect("mongodb+srv://admin-sumit:password@cluster0-bessu.mongodb.net/myBlog", {
useNewUrlParser: true,
useUnifiedTopology: true
});
const userSchema = new mongoose.Schema({
email:String,
password:String,
comments:String
});
userSchema.plugin(passportLocalMongoose);
const User = new mongoose.model("User", userSchema);
passport.use(User.createStrategy());
passport.serializeUser(User.serializeUser());
passport.deserializeUser(User.deserializeUser());
app.get("/blog1comment", function(req, res){
if(req.isAuthenticated()){
res.render('blogsingle', { title: 'Express' });
} else{
res.redirect("/login");
}
});
app.post('/register', function(req, res){
User.register({username: req.body.username}, req.body.password, function(err, user){
if(err){
console.log(err);
res.redirect("/register");
} else {
passport.authenticate("local")(req, res, function(){
res.redirect("/");
});
}
});
});
app.post('/login', function(req, res){
const user = new User({
username: req.body.username,
password: req.body.password
});
req.login(user, function(err){
if(err){
console.log(err);
} else{
passport.authenticate("local")(req, res, function(){
res.redirect("/");
});
}
});
});
app.listen(process.env.PORT || 3000, function(){
console.log('Server is running');
});
Пожалуйста, помогите мне в этом.