我试图在mongo中从我的数据库中推送一个数组中的信息。但是我要保存的信息有另一个数组。
我的模特:
var hotelSchema = new Schema({
version: Number,
name: String,
services: [{
name: String,
price: Number,
description: String,
images:[{
url: String,
md5: String,
ext: String
}],
subservices:[{
name: String,
price: Number
}]
}]});
现在,我想添加一个服务,这就是我使用的方式:
var u=req.body;
var subServices= [];
for(var i=0;i<u.nameSub.length;i++)
{
subServices.push({nombre: u.nameSub[i], precio: u.priceSub[i]});
}
Hotel.update({ "_id": doc._id},
{$push: {services:
{
name: u.name,
price: u.price,
description: u.desc,
subservices:subServices
}}}, function(err, result){ });
MongoDB保存那个查询但在子服务中只保存“_id”。结果是(在这种情况下,我想添加3个子服务):
{
"name" : "service",
"price" : 10,
"description" : "service test",
"_id" : ObjectId("542c64c0dd8de1340515c43f"),
"subservices" : [{
"_id" : ObjectId("542c64c0dd8de1340515c442")
},
{
"_id" : ObjectId("542c64c0dd8de1340515c441")
},
{
"_id" : ObjectId("542c64c0dd8de1340515c440")
}],
"images" : []
}
我需要帮助。谁知道我该怎么做?
PD:抱歉我的英文不好