我有两个模式,我希望通过以下方式“连接”:
第一个是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})
我尝试了几种方法来传递这个参数,但是在所有这些方法中失败了,它是如何实现的?
答案 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})