Не удается подключить пользователя, вошедшего в проекты MongoDB - PullRequest
0 голосов
/ 25 сентября 2018

Итак, что мне нужно: у меня есть пользователь, вошедший в систему, он добавляет проект, и этот проект остается тем же хостом пользователя, который его добавил.Я поделюсь своим кодом:

Схема пользователя:

var mongoose = require("mongoose");
var passportLocalMongoose = require("passport-local-mongoose");


var UserSchema = new mongoose.Schema({

    username: String,
    password: String,
    companyname: String
})

UserSchema.plugin(passportLocalMongoose);

module.exports = mongoose.model("User", UserSchema);

Схема ПРОЕКТОВ:

var mongoose = require("mongoose");

var projectSchema = new mongoose.Schema({

  projectname: String,
  typeofproject: String,
  user: [{
    type: mongoose.Schema.Types.ObjectId,
    ref: 'User'
   }]
 })

module.exports = mongoose.model('Project', projectSchema);

myМаршрут к Создать новый Проект:

exports.create_new_projects = (req, res) => {


Project.create({
    projectname: req.body.projectname,
    typeofproject: req.body.typeofproject
}, (err, projects) => {
    if (err) {
        console.log("ERROR_0 ------------" + err);
    }

    User.findOne({}, (err, user) => {
        if(err){
            console.log(err);
        }
        console.log(projects);
        user.projects.push(projects._id);
        user.save();

        console.log('NEW Project added!')
        res.json(projects)
    });
});

}

TypeError: Невозможно прочитать свойство 'push' undefined в User.findOne

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