将架构插入另一个架构mongodb(mongoose)

时间:2015-12-12 11:50:21

标签: json node.js mongodb mongoose nosql

我有两个模式,我希望通过以下方式“连接”:
第一个是User架构,其中包含用户的电子邮件,密码和名称:

var userSchema = new Schema({
    local            : {
        email        : String,
        password     : String,
        name         : String
    }
});

第二个是公寓(列表)架构,其中包含有关公寓的详细信息,其中一个详细信息是所有者 - 这是User

var listingSchema = new Schema({
        street          : String,
        buildingNumber  : Number,
        apartmentNumber : Number,
        price           : Number,
        owner           :{
                type: Schema.ObjectId,
                ref: 'User'
        }
});

通常我会这样做:

db.listings.insert({"street" : "Gordon", "buildingNumber" : 40, "apartmentNumber" : 69, "beds" : 3, "price" : 2000}

但我现在要做的是这样的事情:

db.listings.insert({"street" : "Gordon", "buildingNumber" : 40, "apartmentNumber" : 69, "beds" : 3, "price" : 2000, "owner" : Idos})

我尝试了几种方法来传递这个参数,但是在所有这些方法中失败了,它是如何实现的?

1 个答案:

答案 0 :(得分:0)

尝试像这样实例化User
var Idos = db.users.findOne() //或find(...) 然后:

 db.listings.insert({"street" : "Dizingof", "buildingNumber" : 33, "apartmentNumber" : 63, "beds": 3,
"owner" : Idos})

然后将其插入数据库,如下所示:

db.listings.insert({"street" : "Gordon", "buildingNumber" : 40, "apartmentNumber" : 69, "beds" : 3, "price" : 2000, "owner" : Idos})