0

私のコントローラは次のようなデータを返します:

{
   "success":true,
   "data":{
      "35":{
         "msg":{
            "32":{
               "module_id":"35",
               "alert_id":"32",
               "alert_datetime":"2012-11-28 16:19:19",
               "param1_type":"imo",
               "param1_value":"453465",
               "param2_type":"",
               "param2_value":"0",
               "param3_type":"",
               "param3_value":"0",
               "msg":"triiiis dve",
               "count":1
            },
            "33":{
               "module_id":"35",
               "alert_id":"33",
               "alert_datetime":"2012-10-28 00:00:00",
               "param1_type":"imo",
               "param1_value":"54984",
               "param2_type":"",
               "param2_value":"0",
               "param3_type":"",
               "param3_value":"0",
               "msg":"triis tri",
               "count":1
            }
         }
      },
      "42":{
         "msg":{
            "1":{
               "module_id":"42",
               "alert_id":"1",
               "alert_datetime":"2012-10-28 16:19:19",
               "param1_type":"imo",
               "param1_value":"9281906",
               "param2_type":"",
               "param2_value":"0",
               "param3_type":"",
               "param3_value":"0",
               "msg":"",
               "count":1
            }
         }
      },
      "39":{
         "msg":{
            "2":{
               "module_id":"39",
               "alert_id":"2",
               "alert_datetime":"2012-10-28 12:36:31",
               "param1_type":"imo",
               "param1_value":"65464546",
               "param2_type":"",
               "param2_value":"0",
               "param3_type":"",
               "param3_value":"0",
               "msg":"",
               "count":1
            }
         }
      }
   }
}

その後、私はこれをします

that.tpl.overwrite(that.el, Ext.decode(response).data);

問題は、結果オブジェクトのキーをループできないことです...定義済みのキー名を持つオブジェクトをループする方法は知っていますが、私のものは動的に生成されます...
助けていただければ幸いです、ありがとう!

4

1 に答える 1

1

ネストの深さ (この場合、「データ」要素の 4 レベル下) についてのアイデアがあると仮定しています。

Ext.Object.eachを使用してデータをループすることもできます(これにもクエリ メソッドがいくつかあるかもしれませんが、確かではありません)。各要素の子もループします。Ext.data.Model インスタンスを使用する場合、Ext.data.association リンクを使用してデータをループできます。

その場合、レベルごとに異なるテンプレートを作成し、各テンプレートの結果を上のレベルのテンプレートに挿入できます。

私が思っているよりも難しいように聞こえます。

テンプレートの foreach は、現在、サポート サブスクライバーのみが利用できます。

于 2012-10-09T12:46:10.490 に答える