显示DB中的平均堆栈的名称

时间:2017-07-16 16:02:23

标签: mongodb angular express mean-stack

我正在MEAN堆栈中设计一个小应用程序(Mongo + Express.js + Angular4 + Node.js),用于简单的应用程序。

我正在设计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"
        }
    ]
}

1 个答案:

答案 0 :(得分: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"
}