2013-07-12 16 views
0

我使用JSON调用获取数据并将其设置为不同的商店,现在我已经修改了JSON结构以满足ProgreesBar数据的一个更多需求。 我是否必须为数据创建新的商店或模式,或者我可以从商店获取它。如何为以下数据创建存储和模型?

{ 
    "data": [{ 
    "firstRun": { 
     "progress": 0, 
     "settingList": [{ 
     "settingName": "BoxTone Database Password", 
     "cssClass": "neutral", 
     "id": "linl_boxtone_db_passwoed" 
     }, { 
     "settingName": "Email Notification", 
     "cssClass": "fault", 
     "id": "email_notification_link" 
     }, { 
     "settingName": "User and Group Sync", 
     "cssClass": "neutral", 
     "id": "link_user_and_group_sync", 
     "listItem": [{ 
      "settingName": "User and Group Sync from ActiveDirectory", 
      "cssClass": "neutral", 
      "id": "link_user_and_group_sync_ad", 
      "listItem": "AL" 
     }, { 
      "settingName": "Add Groups", 
      "cssClass": "neutral", 
      "id": "link_add_groups", 
      "listItem": "AL" 
     }] 
     }, { 
     "settingName": "ActiveSync Log Share", 
     "cssClass": "neutral", 
     "id": "link_activesync_log_share" 
     }] 
    }, 
    "operate": { 
     "progress": 0.04, 
     "settingList": [{ 
     "settingName": "SNMP Alerting", 
     "cssClass": "neutral", 
     "id": "lnk_snmp_alerting" 
     }, { 
     "settingName": "BlackBerry Servers", 
     "cssClass": "neutral", 
     "id": "lnk_BlackBerryServers", 
     "listItem": [{ 
      "settingName": "BES 5.x Servers", 
      "cssClass": "neutral", 
      "id": "lnk_BESServers", 
      "listItem": "AL" 
     }, { 
      "settingName": "BES Logs", 
      "cssClass": "neutral", 
      "id": "lnk_BESLogs", 
      "listItem": "AL" 
     }, { 
      "settingName": "BES SNMP Alerting", 
      "cssClass": "neutral", 
      "id": "lnk_BESSNMPAlerting", 
      "listItem": "AL" 
     }] 
     }, { 
     "settingName": "Good For Enterprise (GFE) Servers", 
     "cssClass": "mixed", 
     "id": "gmServer", 
     "listItem": [{ 
      "settingName": "GFE Good Messaging Control (GMC) Servers", 
      "cssClass": "fault", 
      "id": "gmcServer", 
      "listItem": "AL" 
     }, { 
      "settingName": "GFE Good Mobile Messaging (GMM) Servers", 
      "cssClass": "saved", 
      "id": "gmmServer", 
      "listItem": "AL" 
     }, { 
      "settingName": "GFE Load Balancing", 
      "cssClass": "neutral", 
      "id": "gfe_load_balancing", 
      "listItem": "AL" 
     }] 
     }, { 
     "settingName": "Good Dynamics Servers", 
     "cssClass": "neutral", 
     "id": "lnk_GoodDynamicsServers", 
     "listItem": [{ 
      "settingName": "Good Control (GC) Servers", 
      "cssClass": "neutral", 
      "id": "lnk_GoodControlServers", 
      "listItem": "AL" 
     }] 
     }, { 
     "settingName": "Microsoft Exchange Activesync", 
     "cssClass": "neutral", 
     "id": "lnk_MicrosoftExchangeActivesync", 
     "listItem": [{ 
      "settingName": "HTTP Error Logs", 
      "cssClass": "neutral", 
      "id": "lnk_HTTPErrorLogs", 
      "listItem": "AL" 
     }, { 
      "settingName": "BES", 
      "cssClass": "neutral", 
      "id": "lnk_BES", 
      "listItem": "AL" 
     }] 
     }] 
    } 
    }], 
    "success": true 
} 
+1

取决于您需要如何使用数据。如果数据已经存储在商店中,并且只需要值,那么您可以简单地检索并使用它。如果您需要以类似于模型/商店的方式使用数据,那么使用不同模型创建新商店可能是您需要做的。不知道你的确切要求,但很难说,因为你可以在没有模型和商店的情况下在ExtJS中做很多事情(并且还有很多)。 – existdissolve

回答

0

如果您的模型中没有“进度”,您还可以从商店获取原始数据。但是,这不会被强烈建议,因为如果通过任何ExtJS方法,您将无法与数据交互的程度与您的模型中的数据相同。

相关问题