Meine Frage ist, wie Metadaten neben TotalRecords zu bekommen, in meinem Fall ist es Version, Code, searchquery (siehe json).So konfigurieren Sie ExtJS 4 Store (Proxy und Reader) zum Lesen von Metadaten
{
"result": {
"version":"1",
"code":"200",
"searchquery": "false",
"totalRecords": "2",
"account":[
{
"lastname": "Ivanoff",
"firstname": "Ivan",
"accountId":"1"
},
{
"lastname": "Smirnoff",
"firstname": "Ivan",
"accountId":"2"
}
]
}
}
Hier ist mein Modell:
Ext.define("test.Account", {
extend: "Ext.data.Model",
fields: [
{name: 'accountId', type: 'string'},
{name: 'lastname', type: 'string'},
{name: 'firstname', type: 'string'}
]
});
und zu speichern:
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);
}
}
});
diesen Speicher verwenden Ich bin in der Lage Datensätze zu laden (Konto) und kann keine finden Methoden, um auf die restlichen Felder zuzugreifen.
Vielen Dank im Voraus.
i-Proxy konfiguriert Klasse geprüft. http://docs.sencha.com/ext-js/4-1/#!/api/Ext.data.proxy.Proxy - dort findet sich keine 'processResponse()' Methode. Ich finde einen in Ext.form.action.Action. Können Sie diese Antwort etwas klarer machen? – Jom
überprüfen Sie 'Ext.data.proxy.Server' Klasse in 4.0.7 (Ich denke, OP hat ExtJs4 nicht 4.1 - aber sie sollten relativ ähnlich sein) – sha
Vielen Dank für den Tipp mit ProcessResponse-Methode, aber ich arbeite mit Version 4.1 und entschied Framework-Dateien nicht zu berühren. Allerdings habe ich eine andere Lösung für mein Problem gefunden. Proxy-Klasse hat AfterRequest Event, dieses Ereignis behandeln Ich kann Antwortdaten mit allen Metadaten-Feld erhalten. – barmaleikin