MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Beziehungen und Fremdschlüssel in Mongoose verstehen

Ich bin noch neu bei Node, Mongoose und Mongo, aber ich denke, ich kann zumindest einen Teil Ihrer Frage beantworten. :)

Ihre aktuelle Methode ist die gleiche, die ich zuerst versucht habe. Grundsätzlich wird es sehr ähnlich wie hier gespeichert (in JS geschrieben, da ich CoffeeScript nicht kenne):

var todoListSchema = new mongoose.Schema({
    name: String,
    todos: [{
        name: String,
        desc: String,
        dueOn: Date,
        completedOn: Date
    }]
});

Ich habe später diese Methode gefunden, nach der ich gesucht habe, und ich denke, was Sie beabsichtigt haben:

var todoListSchema = new mongoose.Schema({
    name: String,
    todos: [{
        type: mongoose.Schema.Types.ObjectId,
        ref: 'Todo' //Edit: I'd put the schema. Silly me.
    }]
});

Diese speichert ein Array von ObjectIds, die Sie dann mit Query#populate laden können in Mungo.

Ich kenne die technischen Auswirkungen nicht, aber für mein Gehirn ergibt es mehr Sinn, wenn ich sie getrennt halte, also mache ich das. :)

Bearbeiten:Hier sind einige offizielle Dokumente, die nützlich sein könnten:http://mongoosejs.com/docs/ bevölkern.html