鑑於以下架構如何使新的值被添加到陣列
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