Как создать маршрут для обновления / удаления поля массива из коллекции. Схема коллекции и массива:
var activitySchema = new Schema({
title: String,
categoryId: String,
mainLocation: String,
trail: [{
description: String,
longitude: Number,
latitude: Number
}],
nbAdults: Number,
nbTeens: Number,
nbKids: Number,
lowestPrice: Number,
highestPrice: Number
...
Как я добавил действие:
// ADD NEW ACTIVITIES
router.post('/',(req, res) =>{
var activity = new Activity({
title:req.body.title,
categoryId:req.body.categoryId,
mainLocation:req.body.mainLocation,
nbAdults:req.body.nbAdults,
nbTeens:req.body.nbTeens,
nbKids:req.body.nbKids,
lowestPrice:req.body.lowestPrice,
highestPrice:req.body.highestPrice,
trail:[],
activityStats:[],
options:[],
notices:[],
images:[],
schedules:[],
created_at: new Date()
})
user.save()
.then((data)=>{
res.send({
success:true,
data:data,
message:"Activity created"
});
}).catch((err)=>{
res.send({
success:false,
error:err
})
})
})
Как я добавил TRAIL ARRAY:
//ADD NEW TRAIL//
router.post('/:id/trail',(req, res)=>{
var data = {
description:req.body.description,
longitude:req.body.longitude,
latitude:req.body.latitude,
created_at: new Date()
}
Activity.findById(req.params.id, (err, activity) => {
activity.trail.push(data);
activity.save((err, data)=>{
if(err) res.send({
success:false,
error:err
})
res.send({
success:true,
data:data,
message:"Trail added",
})
})
})
});
Что мне нужно сделать, это добавить маршрут, который обновляет массив или удаляет его. Массив является одним полем коллекции действий. Что я должен использовать в качестве конечной точки (Как мне написать идентификатор трейла)?