在Express中使用Passport进行用户身份验证

问题描述

我正在尝试使用Express构建学生数据输入应用。但是现在我所有的用户都在处理完全相同的数据。我该如何设置它,以便每个用户都有自己的数据。

这是我的用户模型

var mongoose = require('mongoose'),passportLocalMongoose = require('passport-local-mongoose');

var userSchema = new mongoose.Schema({
  username: { type: String,unique: true },school: String,password: String,});

userSchema.plugin(passportLocalMongoose);

module.exports = mongoose.model('User',userSchema);

这是我的课堂模型

var mongoose = require('mongoose');

var gradeSchema = new mongoose.Schema({
  std: String,division: String,date: { type: Date,default: Date.Now },year: String,author: {
    id: {
      type: mongoose.Schema.Types.ObjectId,ref: 'User',},username: String,});

module.exports = mongoose.model('Grade',gradeSchema);

我绝对不知道如何将不同的用户设置为只能访问自己的类。

这是我对类的索引路径(按类,我的意思是我上面提到的类模型)。

router.get('/',middleware.isLoggedIn,(req,res) => {
  Grade.find({},async (err,grades) => {
    try {
      res.render('grades/index',{
        grades: grades,});
    } catch (err) {
      res.redirect('back');
      console.log(err);
    }
  });
});

我不确定是否提供此信息。是否足够,如果不能,我绝对可以提供。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)