是否可以让一个Schema引用Mongo中的另一个Schema?
我有以下内容,我希望Line架构中的用户成为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);
答案 0 :(得分:24)
是的,有可能
var LineSchema = new Schema({
user: {type: Schema.ObjectId, ref: 'UserSchema'},
text: String,
entered_at: {type: Date, required: true, default: Date}
});
还有一句话,你为什么称他们为LineSchema
和UserSchema
?您可以将它们称为Line
和User
,它们代表一条线和一个用户:)