Javascript 带有对象的Mongoose模式
我试图用NodeJS填充MongoDB中的文档,因此创建了一个模式和一个post-reqJavascript 带有对象的Mongoose模式,javascript,node.js,mongodb,express,body-parser,Javascript,Node.js,Mongodb,Express,Body Parser,我试图用NodeJS填充MongoDB中的文档,因此创建了一个模式和一个post-req var gameSchema = new Schema({ title: String, developer: { name: String, email: String }, isBroadcasted: Boolean }); 因此我想通过一个请求填充这个模式。 router.post
var gameSchema = new Schema({
title: String,
developer: {
name: String,
email: String
},
isBroadcasted: Boolean
});
因此我想通过一个请求填充这个模式。
router.post('/android', auth, function(req, res){
// Create a new instance of the Game model
var game = new Game();
game.title = req.body.title;
game.developer.name = req.body.developer.name;
game.developer.email = req.body.developer.email;
但是,当我运行它时,会出现一条错误消息“TypeError:无法读取未定义的属性'name'”,但是我不明白为什么,因为developer.name存在。我猜错误不是指
游戏.developer.name
,而是指请求主体.developer.name
router.post('/android', auth, function(req, res){
// Create a new instance of the Game model
var game = new Game();
game.title = req.body.title;
game.developer.name = req.body.developer.name;
game.developer.email = req.body.developer.email;
试着把你的线路改成
game.developer.name = req.body['developer.name']
作为参数developer.name
被解析为字符串,而不是嵌套对象