Генерируется аналогично спискам, но со следующими отличиями:
- в месте построения разметки для списка стало доступно свойство params в которое передается объект
Пример:
/**
* Права доступа
* @class Core.view.users.accesses_users-Collection
*/
Ext.define('Core.view.users.accesses_users-Collection', {
extend: 'IServ.UI.ListViewPanel',
xtype: 'accesses_users-collection',
extraParams: {}, // дополнительные параметры при передаче данных на сервер
title: 'Права доступа',
toolbarConfig: {
refresh: true,
creatable: false, // скрываем кнопку "Создать"
paging: true
},
items: [{
xtype: 'listviewsubgrid',
store: {
type: 'accesses'
},
/**
* дополнительные параметры передаваемые серверу
*/
params: { // набор параметров передается по требованию
viewId: 'accesses_users',
recordId: '' // данный параметр передается внутри
},
/**
* наименование представления которое будет использоваться для карточки
*/
detailViewName: 'accesses-DetailView',
columns: [
/**
*
*/
{
xtype: 'numbercolumn',
dataIndex: 'id',
text: '',
filter: {
type: 'int'
}
},
/**
* Разрешить
*/
{
xtype: 'booleancolumn',
dataIndex: 'allow',
text: 'Разрешить',
filter: {
type: 'bool'
}
},
/**
* Пользователь
*/
{
xtype: 'fcolumn',
dataIndex: 'user_id',
text: 'Пользователь',
filter: {
type: 'string'
}
,
displayField: 'name',
valueField: 'id'
},
/**
* Роль
*/
{
xtype: 'fcolumn',
dataIndex: 'roles_id',
text: 'Роль',
filter: {
type: 'string'
}
,
displayField: 'id',
valueField: 'id'
},
/**
* Имя таблицы
*/
{
xtype: 'gridcolumn',
dataIndex: 'table_name',
text: 'Имя таблицы',
filter: {
type: 'string'
}
}
],
listeners: { // ВНИМАНИЕ!!! тут метод обработки другой
itemdblclick: 'onSubItemClick'
}
}]
});