2017-02-18 95 views
0

我是新的貓鼬和MongoDB這樣裸露着我,現在我不太明白什麼是貓鼬的使用Schemamodel,但是定義/創建時,一個新的Schema2種做的方式它(我發現),並且我被它迷惑,在貓鼬上創建模式是否使用'new'關鍵字?

方式(沒有new - 沒有創建實例):

var mongoose = require('mongoose'); 
mongoose.connect('mongodb://localhost/dbName'); 

// No 'new' keyword 
var mySchema = mongoose.Schema({ 
    parameter1 : String, 
    parameter2 : String 
}); 

var modelName = mongoose.model('collectionName', mySchema); 

和(與new- 創建一個實例)做這件事的第二方式:

var mongoose = require('mongoose'); 
mongoose.connect('mongodb://localhost/dbName'); 

// There is 'new' keyword 
var mySchema = new mongoose.Schema({ 
    parameter1 : String, 
    parameter2 : String 
}); 

var modelName = mongoose.model('collectionName', mySchema); 

什麼是兩者之間的區別是什麼?何時使用其中一種?

感謝

回答

1

兩種方式都很好,但是根據編碼標準和貓鼬圖書館,我們使用第二個方法。它跟隨擴展&實現功能,如OOP。

架構&我們在使用的NodeJS進行驗證型號&限制不必要的對象&域插入到蒙戈集合。

這就是使用的原因。