【发布时间】:2017-05-31 15:59:11
【问题描述】:
我是 Mongoose 的新手,我认为我删除子文档中的项目的方法不正确。
我有以下架构设置:
//DEPENDENCIES
var mongoose = require('mongoose');
var contactSchema = new mongoose.Schema({
name:{type:String},
age:{type:Number}
});
var phoneSchema = new mongoose.Schema({
number:{ type: String },
phoneType:{ type: Number }
})
var memberSchema = new mongoose.Schema({
firstname: {
type: String
},
lastname: {
type: String
},
phone:[phoneSchema],
contacts:[contactSchema]
});
//RETURN MODEL
module.exports = mongoose.model('member', memberSchema);
要从手机中删除项目,在我的 Express API 中,我首先找到父项,然后引用子 ID 的“删除”,如下所示。但它不起作用。
router.route('/owner/:ownerId/phone/:phoneId')
.delete(function(req, res){
Member.findOne({_id: req.body.ownerId}, function(err, member){
member.phone.remove({_id: req.body.phoneId}, function(err){
if(err)
res.send(err)
res.json({message: 'Success! Phone has been removed.'})
});
});
});
【问题讨论】:
标签: node.js express mongoose mongoose-schema