我在Express / Mongoose / Mongo应用程序中发布嵌套模型时遇到问题。当我尝试同时拥有单个容器模型和多个内部模型时,只有外部模型(Orders)显示在数据库中。
架构:
var itemSchema = new Schema({
order: ObjectId,
type: String // ex: Sandwich
});
var orderSchema = new Schema({
name: String,
items: [Item.itemSchema]
});
API:
var Order = require('../models/order.js');
var Item = require('../models/item.js');
exports.createOrder = function(req, res) {
new Order({name: req.body.name}, function(err, order){
order.items.forEach(function (err, item){
new Item({order: order._id, type: item.type}).save;
});
}).save();
};
Curl Post:
curl -i -X POST -H 'Content-Type: application/json' -d '{"name": "John Smith","items": [{"type": "sandwich"},{"type": "sub"}]}' http://localhost:3000/order
答案 0 :(得分:0)
new Order()
不接受回电。
a)您是否打算保存嵌入订单或
的“商品”b)您打算将这些项目保存在单独的集合中吗?
c)两个?