鉴于以下架构如何使新的值被添加到阵列
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var favoriteSchema = new Schema({
dishes: [{
type: mongoose.Schema.Types.ObjectId,
ref: 'Dish'
}],
postedBy: {
type: mongoose.Schema.Types.ObjectId,
ref: 'User'
}
}, {
timestamps: true
});
var Favorites = mongoose.model('Favorite', favoriteSchema);
module.exports = Favorites;
及以下路由器
var bodyParser = require('body-parser');
var express = require('express');
var mongoose = require('mongoose');
var Favorites = require('../models/favorites');
var Verify = require('./verify');
var favoritesRouter = express.Router();
favoritesRouter.use(bodyParser.json());
favoritesRouter.route('/')
.post(Verify.verifyOrdinaryUser, function(req,res,next){
req.body.postedBy = req.decoded._doc._id;
console.log('nana ' + req.body.postedBy);
Favorites.create(req.body,function(err,fav){
if(err) throw err;
fav.dishes.push(req.body);
fav.save(function(err,fa){
if(err) throw err;
res.json(fa);
})
});
});
module.exports = favoritesRouter;
每次我做我部分更新的MongoDB内的数组和对象帖子要求邮递员,我要把碟子ID附在请求的主体上。
{
"_id": "577a996155d73cf02b0d516f"
}
我不能想出了一个解决这个ID插入到阵列,而不是重新创建整个对象只有1所述阵列内部的id。我做错了什么,或者为了做我想要的逻辑而做了其他事情?
您正在使用'喜欢它req.body'既是“最喜欢的”和“盘子”。这是什么? – afuous