例如,我有以下架构:
{
title:String,
content:String,
votes:{
up:[ObjectId],
down:[ObjectId]
}
}
我希望追加up数组。如何使用Mongoose中的$ addToSet追加它?
我试过这些:
Article.findByIdAndUpdate(
req.params.id,
{$addToSet:{votes:{up:req.user.id}}},
null,
function(asdf){
console.log(asdf);
});
这是我收到的错误消息:
[MongoError: exception: Cannot apply $addToSet to a non-array field. Field named 'votes' has a non-array type Object in the document _id: ObjectId('55e975801026f4e02a17e77b')]
和
Article.findByIdAndUpdate(
req.params.id,
{$addToSet:{votes.up:req.user.id}},
null,
function(asdf){
console.log(asdf);
});
对于这个:
Article.findByIdAndUpdate(req.params.id, {$addToSet:{votes.up:ObjectID(req.u
^
SyntaxError: Unexpected token .