2014-01-24 130 views
0

我正在查看node.js中的代碼,express,mongoose。它定義模式:這是什麼類型的聲明?一個函數?類?

var Comment = new Schema({ 
    username : String, 
    content : String, 
    created : Date 
}); 

我不明白這是什麼actaully的是,由於

var Comment = 

是像一個函數/變量

new Schema 

類似於類 和

{ 
     username : String, 
     content : String, 
     created : Date 
    } 

就像一個關聯數組...

這種類型的塊究竟是什麼?它是如何工作的?

非常感謝

+0

這是一個集合 – Sekai

+2

的模式是向過往填充它返回一個對象全局一個匿名對象構造函數的調用。 – dandavis

+1

如果不知道詳細信息,只需將'Schema'的實例分配給'Comment'。文字對象是「Schema」構造函數的參數。你不明白什麼是什麼?除了對象構造函數'String','Date'等,這個語法中沒有什麼特別之處...... – elclanrs

回答

1

這是一段JavaScript面向對象的風格,特別是模型視圖控制器的概念。

你在這裏的例子中描述的稱爲模型。它定義了輸入和輸出的數據如何適合這個概念。

因此,這個模型將被命名爲註釋,它將持有用戶名,內容作爲字符串並創建爲日期。稍後通過調用它可以很容易地保存到數據庫中。

Comment.save(); 

「新架構」告訴引擎在這裏應該創建一個新模型。

請參閱也在這裏: http://mongoosejs.com/docs/guide.html

+0

你是對的。將編輯這個以避免混淆。 – HappyCoder

相關問題