2016-11-12 4 views
0

Ich arbeite an einer mittleren Stapel App. Was ich habe, ist eine Reihe von Benutzern und eine Reihe von Tabelleneinträgen (Dateien) für jeden bestimmten Benutzer. Die Anzahl der Benutzer und Dateien wird schrittweise zunehmen. Ich bin nicht sicher, wie man damit umgeht ist in Mungo und Express?Mehrere Datensätze in Mungo

PS. Ich verwende den Pass für die Authentifizierung und das clientseitige Routing.

Antwort

0

Ich verwende nicht All-in-One-App-Stacks (Meanjs oder etwas).

Ich werde ein Beispiel, wie ich Mungo-Modelle definieren und Router verwenden.

in /models/User.js: irgendwo

var 
    mongoose = require('mongoose'), 
    Schema = mongoose.Schema; 

var UserSchema = new Schema({ 
    name: { 
    type: Schema.Types.String, 
    required: true 
    }, 
    email: { 
    type: Schema.Types.String, 
    required: true, 
    index: true 
    }, 
    pwd: { 
    type: Schema.Types.String, 
    required: true 
    }, 
    files: { 
    type: [Schema.Types.Mixed], 
    required: false, 
    default: [] 
    } 
}); 

module.exports = mongoose.model('User', UserSchema); 

in Routing-Dateien:

Es sollte so etwas sein

var User = require('./models/User'); 

app.post('/user/:_id/file', function(req, res) { 

    var file = {filename: 'blabla.jpg', some: 'other data'}; // this will be file that will be handled by post request 

    User.findByIdAndUpdate(
    req.params._id, 
    {$push: {"files": file}}, 
    {safe: true, upsert: true}, 
    function(err, model) { 
     // callbacks and etc here 
    }); 
}); 
+0

Es tut mir leid für die Details fehlen. meine Daten sollten ungefähr wie dieses aussehen {_id: { Name: E-Mail: pwd: Dateien: {file1, file2}}}, (. Dateien auch mehrere Felder enthalten) , was ich will, ist Mungo Schema um sowohl Benutzer als auch Dateien eines Benutzers zu behandeln. Die Web-App zeigt die Benutzerliste der Dateien und Details an, sobald sie angemeldet sind –