2012-11-06 79 views
10

所以我有一些所謂MongoDB的架構設計命名約定

exports.create = function(projectJSON){ 

var project = new ProjectModel({ 
    id : projectJSON.id, 
    projectName : projectJSON.projectName , 
    authorName : projectJSON.authorName, 
    firstPostDate : projectJSON.firstPostDate 

}) 
} 

爲多字元素上面的命名約定firstPostDate正確的,或者他們在所有小盤股_間隔?

我看到其他的博客喜歡它是在小盤股..

編輯:

而且我讀的元素應該是單數,而不是複數即:

`comment` instead of `comments` for a blog schema design 

回答

15

我我自己使用Google's JSON Style Guide,他們建議使用camelCase即firstPostDate。以下是部分摘錄

屬性名稱格式

屬性名必須符合以下原則:

  • 屬性名應當符合定義的語義有意義的名稱。
  • 屬性名必須是駱駝套管,ASCII字符串。
  • 第一個字符必須是字母,下劃線(_)或一個美元符號($)。
  • 隨後的字符可以是字母,數字,下劃線或美元符號。應避免
  • 保留的JavaScript關鍵字(保留的JavaScript關鍵字列表可以在下面找到)。

這些準則反映準則命名的JavaScript標識符。這允許JavaScript客戶端使用點符號訪問屬性。 (例如,result.thisIsAnInstanceVariable)。以下是一個物件的示例:

{ 
    "thisPropertyIsAnIdentifier": "identifier value" 
} 
+0

所以如果它只是1級與許多其他嵌入式文件龐大架構,第一個字符應該是'_id',而不是僅僅'id'吧?並且嵌入式文檔中的'id'不需要有下劃線? – bouncingHippo

+0

@bouncingHippo無法理解你在說什麼。 Mongo中的所有高級別文檔都自動創建了_id。我不認爲你可以重命名它。 –

+0

可以說''thisPropertyIsAnIdentifier「'是一個字符串,在模式設計中,它不應該是''thisPropertyIsAnIdentifier」:「String」'? – bouncingHippo

5

縮短字段名稱不是必需的。

檢查docs

縮短字段名減少表現並沒有提供對於大型文檔 可觀的效益並在文件開銷 是顯著關心的問題。較短的字段名稱不會減小索引的大小,因爲索引具有預定義的結構。 在 一般沒有必要使用短字段名

1

收集

命名約定爲了僅舉幾集採取預防措施 1.收集與空字符串(「」)是不是一個有效的集合名稱。 2.集合名稱不應包含空字符,因爲它定義集合名稱的結尾。 3。集合名稱不應以前綴「system」開頭,因爲這是爲內部集合保留的。 4.在集合名稱中不包含字符「$」是很好的,因爲數據庫可用的各種驅動程序不支持集合名稱中的「$」。

欲瞭解更多信息,請點擊鏈接: http://www.learnit.net.in/2016/03/schema-design-and-naming-conventions-in.html