请我知道它的重复,但是我不知道为什么我的代码不起作用
exports.addTechnologyPost = function(req, res){
console.log(req.params.name);
var query = {
name: 'testName',
version: 'testVer',
note: 'testNote',
status: true
};
console.log( query );
Project.findOneAndUpdate(
{ name: req.params.name },
{ $push : {"technologies.$.server" : query } }, { upsert: true, new: true },
function(err, project) {
})
}
我的模式
..........
technologies:{
server:[{
name: String,
version: Number,
note: String,
status: Boolean
}]
}
..........
如果正确或任何语法错误?
答案 0 :(得分:1)
您是否尝试过删除推送对象键中的$
?
Project.findOneAndUpdate(
{ name: req.params.name },
{ $push : {"technologies.server" : query } }, { upsert: true, new: true },
function(err, project) {
})