Есть простая таблица, содержит поля - id, name, text.
Мне нужно вывести эти данные в grid с группировкой по полю name.
Во всех примерах, что я нашёл (например статья -
http://www.ezdia.com/epad/extjs-grid...grouping/1891/) используется переменная с уже определёнными данными. А мне нужно получить данные из JsonStore.
ExtJs 3
Код такой:
Ext.onReady(function() {
Ext.grid.Info = [
{"id":"1","name":"one","text":"one text"},
{"id":"2","name":"two","text":"two text"},
{"id":"3","name":"3","text":"text 3"},
{"id":"4","name":"four","text":"text four"}
];
var TestStore = new Ext.data.GroupingStore({
url : 'http://extjs/get_from_db.php',
//data : Ext.grid.Info,
groupOnSort : true,
remoteGroup : true,
fields : [
{name : 'id', type : 'int'},
{name : 'name', type : 'String'},
{name : 'text', type : 'String'}
],
sortInfo : {
field : 'id',
direction : 'ASC'
},
groupField : 'name',
reader : new Ext.data.JsonReader({
idProperty : 'id',
fields: [
{ name : 'id', type : 'int' },
{ name : 'name', type : 'String' },
{ name : 'text' , type : 'String'}
]
})
});
var TaskGrid = new Ext.grid.GridPanel({
store : TestStore,
colModel : new Ext.grid.ColumnModel({
columns : [
{id : 'id', header : 'Id', dataIndex : 'id'},
{header : 'Name', dataIndex : 'name'},
{header : 'Text', dataIndex : 'text'}
],
defaults : {
sortable : true,
menuDisabled : false,
width : 20
}
}),
view : new Ext.grid.GroupingView({
forceFit : true,
groupTextTpl : '{text} ({[values.rs.length]} {[values.rs.length > 1 ? "Items" : "Item"]})'
}),
frame : true,
width : 700,
height : 450,
collapsible : true,
animCollapse : false,
title : 'Grouping',
renderTo : document.body
});
});
В результате выводится grid без единой ошибки, но пустой. А в случае, если закомментировать строку url и раскомментировать data - всё работает. В чём может быть дело???