2017-07-16 73 views
0

我正在爲MEAN堆棧(Mongo + Express.js + Angular4 + Node.js)設計一個小應用程序,以實現簡單的應用程序。DB中的平均堆棧的顯示名稱

我設計的DB收小的用戶和樣本記錄/文件看起來像

{ 
    "firstName": "John", 
    "lastName": "Smith", 
    "age": 25, 
    "address":"12 Bedford St", 
    "city":"Newport" 
    "state":"MA" 
    "active":true, 
    "mobile":"7345980000", 
    "car":"Honda City 2016" 
} 

在這裏,我們有像姓名,年齡,城市等,這需要顯示在UI作爲密鑰好。 UI顯示的名字會像

項:姓名 - 顯示名稱 「名」

關鍵:地址 - 顯示名稱 「地址」

Final Display in HTML Form

,你可以請參閱上圖,顯示名稱爲橙色,粗體,下劃線。這些不同於按鍵,我想在數據庫中存儲顯示名稱以及,以便我可以在運行時拉出。

什麼是在MongoDB中存儲密鑰和顯示名稱的正確策略,以便我可以讀取並在UI(Angular)中正確顯示?

需要最佳實踐和建議。

這項工作?

{ 
    "personSchema": [ 
     { 
      "key": "firstName", 
      "displayName": "First Name", 
      "internalCode": "101", 
      "order": "001" 
     }, 
     { 
      "key": "lastName", 
      "displayName": "Last Name", 
      "internalCode": "201", 
      "order": "002" 
     }, 
     { 
      "key": "age", 
      "displayName": "Age", 
      "internalCode": "301", 
      "order": "003" 
     }, 
     { 
      "key": "address", 
      "displayName": "Postal Address", 
      "internalCode": "401", 
      "order": "004" 
     }, 
     { 
      "key": "city", 
      "displayName": "City", 
      "internalCode": "501", 
      "order": "005" 
     }, 
     { 
      "key": "state", 
      "displayName": "State", 
      "internalCode": "601", 
      "order": "006" 
     }, 
     { 
      "key": "active", 
      "displayName": "Active", 
      "internalCode": "701", 
      "order": "007" 
     }, 
     { 
      "key": "mobile", 
      "displayName": "Mobile Number", 
      "internalCode": "801", 
      "order": "008" 
     }, 
     { 
      "key": "car", 
      "displayName": "Car Make", 
      "internalCode": "901", 
      "order": "001" 
     } 
    ] 
} 
+0

你可以在UI中直接硬編碼..你試圖做什麼 – Aravind

+0

@Aravind - 編輯並添加了一個截圖來清楚地解釋。 – Sandeep540

+0

我知道這不完全是你問的,但我會把這些值在平均應用程序的json文件。幾乎就像一個屬性文件。這個json文件可以包含你想要的鍵值對。 (「firstname」:「名字」)。然後真正的數據可以存在於數據庫中(「firstname」:「Tim」) –

回答

0

你可以使你的數據是這樣的....所以你可以在任何地方使用顯示名稱,而無需在文檔中複製數據。

{ 
    "name": { 
     "firstName" : "John", 
     "lastName": "Smith" 
    }, 
    "displayName": { 
     "firstName" : "abc", 
     "lastName": "xyz" 
    }, 
    "age": 25, 
    "address":"12 Bedford St", 
    "city":"Newport" 
    "state":"MA" 
    "active":true, 
    "mobile":"7345980000", 
    "car":"Honda City 2016" 
}