UserSchema Completed tasks - это массив, из которого я пытаюсь удалить.
var mongoose = require("mongoose");
var passportLocalMongoose = require("passport-local-mongoose");
var userSchema = new mongoose.Schema({
username: String,
password: String,
completedtasks : [{task : String , time : String}] ,
});
userSchema.plugin(passportLocalMongoose);
module.exports = mongoose.model("User", userSchema);
Код маршрутизатора, в котором я пытаюсь удалить завершенную задачу из массива.
: id is идентификатор задачи, хранящейся в массиве завершенных задач: uid - идентификатор пользователя
Моя цель - удалить задачу из массива завершенных задач.
Но документы Mon goose не помогли так много.
Я попробовал founduser.remove вместо update, и он случайно удалил мою тестовую учетную запись пользователя, в которой было много данных, поэтому я больше не экспериментирую.
router.put('/:id/deletectask/:user' , (req , res) =>{
var tid = req.params.id ;
var uid = req.params.user;
User.findById(uid , function(err , founduser){
if(err){console.log(err)}
else{
founduser.update( {} ,
{ $pull: {completedtasks : {_id : tid} }}
) ;
res.redirect('/'+uid+'/ctl')
}
} )
})