Я создаю приложение с обычным стеклом с выражением и мангустом. У меня есть две схемы, userSchema и courseSchema:Разрешить пользователям добавлять элементы в свои профили Mongoose
var mongoose = require('mongoose'),
Schema = mongoose.Schema;
var courseSchema = mongoose.Schema({
title:{type:String, required:'{PATH} is required!'},
featured:{type:Boolean, required:'{PATH} is required!'},
published:{type:Date, required:'{PATH} is required!'},
courseLink:{type:String, required:'{PATH} is required!'},
user: [{type:Schema.Types.ObjectId, ref : 'User'}]
});
var Course = mongoose.model('Course', courseSchema);
module.exports = Course;
var userSchema = mongoose.Schema({
firstName: {type: String, required: true},
lastName: {type: String, required: true},
username: {
type: String,
required: true,
unique: true // creates unique index inside MongoDB
},
salt: {type: String, required: true},
hashed_pwd: {type: String, required: true},
roles:[String],
courses:[{type: Schema.ObjectId,
ref: 'Course' }]
});
Я могу создавать пользователей и и курсы (в качестве администратора). Теперь я хочу, чтобы каждый пользователь добавлял курс в свой список курсов (или просто нажмите кнопку «как» рядом с курсом, и этот курс будет добавлен в его профиль).
На стороне контроллера я попытался проверить идентификатор пользователя из сеанса, найти этого пользователя и добавить курс в свой документ. Но вот где я застрял,
exports.addMyCourse = function(req, res){
console.log('user id', req.session.passport.user);
console.log('id', req.body._id);
var currentUserId = req.session.passport.user;
User.findOne({'_id':currentUserId}, function(err, doc){
console.log(doc);
});
Большинство решений, на которые я смотрел, не совсем понятны. Любая помощь будет оценена по достоинству.