在mongodb中添加列表数组?

在mongodb中添加列表数组?,mongodb,mongoose,Mongodb,Mongoose,这是个愚蠢的问题,但我在网上找不到一个例子 我在mongoDB上建立了一个具有对象数组的模型,如下所示: var ProjectSchema = new Schema({ project_id: { type: String }, item: { title: { type: String }, owners: [{ first_name : {type: String} , middle_name

这是个愚蠢的问题,但我在网上找不到一个例子

我在mongoDB上建立了一个具有对象数组的模型,如下所示:

var ProjectSchema = new Schema({

    project_id: { type: String },
    item: {
        title: { type: String },
        owners: [{
            first_name : {type: String} ,
            middle_name : {type: String},
            other_name: {type: String},
            last_name: {type: String},
            order: {type: Number, 'default': 1}
        }]
    }
}]
因此,您可以看到该项是一个字段列表。然后,
owners
是一个字段列表数组。当我创建项目时,我尝试将所有者设置为:

var newProject = new Models.Project({
                                'item.title': title,
                                'item.owners[0].last_name': name,
                                'item.owners[0].order': 1
                            });
这不会生成错误,但也不会保存项目字段(
item.title
保存良好)。 我也试过了,但它给了我一个错误:

var newProject = new Models.Project({
                                'item.title': title,
                                item.owners.push({last_name: name, order: 1})
                            });

我应该如何引用这些子文档以便保存它们

它是一个简单的JSON对象。使用Javascript,这是非常直接的。下面的代码生成mongoDB文档中给出的示例对象:

var address1 = new Object();
address1.street = "123 Fake Street";
address1.city = "Faketon";
address1.state = "MA";
address1.zip = "12345";

var address2 = new Object();
address2.street = "1 Some other Street";
address2.city = "Boston";
address2.state = "MA";
address2.zip = "12345";




var data = new Object();

data._id = "joe";
data.name = "Joe Bookreader";
var addressArray = new Array();
addressArray.push(address1);
addressArray.push(address2);
data.addresses = addressArray;

alert(JSON.stringify(data));

不要在新文档的字段中使用点符号,而是使用文档的实际结构创建它:

var newProject=newmodels.Project({
项目:{
标题:标题,,
业主:[{
姓氏:姓名,
订单:1
}]
});

我打赌你已经检查过[相关的mongo db文档](),但只是以防万一。@Alp,是的,我看到了这个。我不知道如何在代码中设置这些值。你知道吗?
“地址[0]。街道”:“假街道”似乎做不到。