2013-02-10 39 views
12

Có thể có một Giản đồ để tham khảo một Giản đồ khác trong Mongo không?Tham chiếu lược đồ Mongoose

Tôi đã có bên dưới, nơi mà tôi muốn người dùng trong lược đồ đường trở thành một người sử dụng từ UserSchema

var UserSchema = new Schema({ 
    name: {type: String, required: true}, 
    screen_name: {type: String, required: true, index:{unique:true}}, 
    email: {type: String, required: true, unique:true}, 
    created_at: {type: Date, required: true, default: Date} 
}); 


var LineSchema = new Schema({ 
    user: [UserSchema], 
    text: String, 
    entered_at: {type: Date, required: true, default: Date} 
}); 


var StorySchema = new Schema ({ 
    sid: {type: String, unique: true, required: true}, 
    maxlines: {type: Number, default: 10}, // Max number of lines per user 
    title: {type: String, default: 'Select here to set a title'}, 
    lines: [LineSchema], 
    created_at: {type: Date, required: true, default: Date} 
}); 


var Story = db.model('Story', StorySchema); 
var User = db.model('User', UserSchema); 

Trả lời

23

Có nó có thể

var LineSchema = new Schema({ 
    user: {type: Schema.ObjectId, ref: 'UserSchema'}, 
    text: String, 
    entered_at: {type: Date, required: true, default: Date} 
}); 

Ngoài ra một nhận xét, tại sao bạn lại gọi họ là LineSchemaUserSchema? Bạn có thể gọi cho chúng LineUser, chúng đại diện cho một dòng và người dùng sau khi tất cả :)

+2

Giá trị của 'ref' có quan trọng không? Tôi đã nhìn thấy các câu trả lời khác nhau trong đó văn bản 'ref' không liên quan đến bất kỳ mô hình hoặc lược đồ nào. –

Các vấn đề liên quan