【问题标题】:Binding json data into store ubsing extjs将 json 数据绑定到 store ubsing extjs
【发布时间】:2012-03-24 20:12:47
【问题描述】:

我有这样的json数据

{"GetStudentDetails":
    {"TotalCount":5,
    "RootResults":[
    {"city":"West Chester","country":"USA","state":"PA ","student_id":100},
    {"city":"Philly","country":"USA","state":"PA","student_id":101},
    {"city":"Buffalo","country":"USA","state":"NY","student_id":102},
    {"city":"Naigra City","country":"USA","state":"NY","student_id":103},
    {"city":"West Chester","country":"USA","state":"PA","student_id":104}]
    }
}

如何将这些数据导入商店? 我正在尝试使用这样的模型。

Ext.define('User', {
                extend: 'Ext.data.Model',
                fields: [
                    { type: 'string', name: 'TotalCount' }
                ],
                hasMany: [{ model: 'RootResults', name: 'RootResult'}]
            });

            Ext.define("RootResults", {
                extend: 'Ext.data.Model',
                fields: [
                    { type: 'string', name: 'city' },
                    { type: 'string', name: 'country' },
                    { type: 'string', name: 'state' },
                    { type: 'string', name: 'student_id' }
                ],
                belongsTo: 'User'
            });

            var store = Ext.create('Ext.data.Store', {
                model: 'User',
                proxy: {
                    type: 'ajax',
                    url: 'users.json',
                    reader: {
                        type: 'json'
                    }
                }
            });

我的模型应该如何?当我提供一些更简单的 json 时,我正在加载商店。我认为问题在于映射?

【问题讨论】:

    标签: json extjs4


    【解决方案1】:

    定义模型为

    Ext.define("RootResults", {
                    extend: 'Ext.data.Model',
                    fields: [
                        { type: 'string', name: 'city' },
                        { type: 'string', name: 'country' },
                        { type: 'string', name: 'state' },
                        { type: 'string', name: 'student_id' }
                    ],
                });
    

    并在阅读器定义中添加两个参数:

    root: 'GetStudentDetails.RootResults'
    totalProperty: 'GetStudentDetails.TotalCount'
    

    类似的东西...主要思想 - 不要试图将内部 JSON 结构引入您的模型 - 正确解析它应该是读者的责任。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-06
      • 2015-11-06
      • 1970-01-01
      • 2012-07-13
      • 2017-12-24
      • 1970-01-01
      • 2017-01-05
      • 1970-01-01
      相关资源
      最近更新 更多