私はそれにマップされたストアを持つExtJSグリッドを持っています。ExtJSグリッド選択モデル
ストアのJSONレスポンスには20個のフィールドが含まれていますが、ストア内のフィールドは10個しかマッピングされていません。他の10個のフィールドを私が店舗にマップしなくてもそれを入手することは可能ですか、それともすべてのフィールドを店舗にマッピングする必要がありますか?グリッドの行選択イベントでこれを行います。コードについては、グリッドを作成し、ストアをマップし、イベントを発生させ、選択された行のレコードをマップされた10フィールドで取得することもできます。
シェカールによって要求されたよう:
ストアの定義
Ext.define('gdoc.store.PrintPaperStore', {
extend: 'Ext.data.Store',
constructor: function(cfg) {
var me = this;
cfg = cfg || {};
me.callParent([Ext.apply({
autoLoad: true,
storeId: 'PrintPaperStore',
proxy: {
type: 'ajax',
url: 'urlToRetrieveTheJSON',
reader: {
type: 'json',
root: 'root'
}
},
fields: [
{
mapping: 'value',
name: 'value'
},
{
mapping: 'display',
name: 'display'
}
]
}, cfg)]);
}
});
JSON応答:あなたは私からのみ 'の値' と '表示' をマッピングしている見ることができるように
{
"root":[{
"value":"COATED115",
"display":"Coated recycled paper (115gms)",
"description" : "Good quality",
"extra" : "EXTRA INFO"
},{
"value":"COATED135",
"display":"Coated recycled paper (135gms)",
"description" : "Good quality"
},{
"value":"OFFSET",
"display":"Offset recycled paper (80gms)",
"description" : "Good quality",
"extra" : "EXTRA INFO"
},{
"value":"OTHER",
"display":"Other paper (client to order)",
"description" : "Good quality",
"extra" : "EXTRA INFO"
}]
}
ストア内のJSON応答。私が店内でそれらをマップする必要なしに、 '記述'と '余分'の値を再検討することは可能ですか?
urストアのコードを表示できますか? – Shekhar
あなたの質問にあなたのコードを含めてください。 – joelparkerhenderson
ありがとう、コードを追加しました。 – Zaje