json - 如何配置ExtJS 4 Store(代理和阅读器)以读取元数据

标签 json extjs model proxy extjs4

我的问题是如何获取除totalRecords之外的元数据,在我的情况下是版本,代码,searchquery(请查看json)。

{
"result": {
    "version":"1",
    "code":"200",
    "searchquery": "false",
    "totalRecords": "2",
    "account":[
            {
                "lastname": "Ivanoff", 
                "firstname": "Ivan", 
                "accountId":"1"
            },
            {
                "lastname": "Smirnoff", 
                "firstname": "Ivan", 
                "accountId":"2"
            }
        ]
}

}

这是我的模型:
Ext.define("test.Account", {
    extend: "Ext.data.Model",
    fields: [
        {name: 'accountId', type: 'string'},
        {name: 'lastname', type: 'string'},
        {name: 'firstname', type: 'string'}    
    ]
});

并存储:
Ext.define("test.TestStore", {
    extend: "Ext.data.Store",
    model: "test.Account",
    proxy: {
        type: "ajax",
        url: "users.json",  
        reader: {
            type    : 'json',
            root    : 'result.account',
            totalProperty: "result.totalRecords"
        }
    },

    listeners: {
        load: function(store, records, success) {
            console.log("Load: success " + success);     
        }
    }
});

使用此存储,我能够加载记录(帐户),并且找不到任何方法来访问其余字段。

先感谢您。

最佳答案

这是我的问题的解决方案。我正在处理Proxy类中的afterRequest事件,可以在其中获取响应数据,对其进行解析并保存元数据。这是TestStore类的代理部分:

因此,这是TestStore类的代理部分:

proxy: {
        type: "ajax",
        url: "/users.json",  
        reader: {
            type    : 'json',
            root    : 'gip.account',
            totalProperty: "gip.totalRecords",
            searchquery: "searchquery"
        },
        afterRequest: function(req, res) {
            console.log("Ahoy!", req.operation.response);    
        }
    }

关于json - 如何配置ExtJS 4 Store(代理和阅读器)以读取元数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11000819/

相关文章:

javascript - 无法访问返回的 promise

php - 如何更改 JSON 请求 Cakephp 3 的错误响应结构

javascript - Ext JS - 一个开始

ajax - ExtJS 应用程序是否与 HTML 页面的其余部分共享 session

java - 将模型属性分配给jsp Spring MVC中的java变量

java - 将字符串转换为 json 对象会出现错误

java.lang.IllegalStateException : Expected BEGIN_OBJECT but was STRING at line 1 column 62 错误

forms - ExtJS 4 ComboBox multiSelect 显示选中值的个数

opengl - 如何在OpenGL中为3D模型(网格)设置动画?

model - Laravel 查询模型关系