2016-11-12 59 views
0

我正在研究一個平均堆棧應用程序。我擁有的是一組用戶和一組用於每個特定用戶的表項(文件)。用戶和文件的數量將逐漸增加。我不知道如何處理這是在貓鼬和表達?多套數據在貓鼬中

PS。我正在使用護照進行身份驗證和客戶端路由。

回答

0

我沒有使用all-in-one應用程序堆棧(meanjs或其他)。

我將舉例說明如何定義貓鼬模型並使用它的路由器。

它應該是這樣的:

/models/User.js

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); 
在某處路由文件

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

我是失蹤的細節抱歉。 我的數據應該是財產以後這樣 {_id:{ 名稱: 電子郵件: PWD: 文件:{文件1,文件2}}},(文件包含多個字段太) 我想是貓鼬架構處理用戶和用戶的文件。 Web應用程序在登錄後顯示每個用戶的文件和詳細信息列表 –