12

Mongo内で別のスキーマを参照するスキーマを持つことは可能ですか?

以下は、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);
4

1 に答える 1

25

はい、可能です

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

また、発言、なぜあなたはそれらを呼んでいるLineSchemaUserSchemaですか?あなたはそれらを呼び出すことができます、LineそしてUser、それらは結局のところ行とユーザーを表します:)

于 2013-02-10T11:01:31.463 に答える