2013-08-20 3 views
1

Так что у меня следующий код здесь, который отображает сетку с данными из моего магазина в отдельном каталоге:Paging панель не отображается количество записей - Ext JS

Ext.require([ 
    'Ext.ux.form.ItemSelector', 
    'Ext.grid.plugin.RowExpander', 
    'Ext.grid.*', 
    'Ext.data.*', 
    'Ext.selection.CheckboxModel', 
    'Ext.toolbar.Paging', 
]); 

Ext.define('AM.view.metadata.List' ,{ 
    extend: 'Ext.grid.Panel', 
    alias: 'widget.metadatalist', 
    title: '<center>Results</center>', 
    store: 'Metadata', 
    requires: ['Ext.ux.RowExpander'], 
    initComponent: function() { 
     this.columns = [ 
      {header: 'Technical Name', dataIndex: 'TECH_NAME', //... 
      //... 
     ]; 
     this.callParent(arguments); //Calls the parent method of the current method in order to override 

    }, 
    dockedItems: [ 
     { 
     xtype: 'toolbar', 
     dock: 'bottom', 
     items: [ 
      { xtype: 'tbtext', text: 'Loading...', id: 'recordNumberItem' }, 
      '-', 
      { text: 'Expand All', id: 'expand' }, 
      '-', 
      { text: 'Collapse All', id: 'collapse' }, 
      '->', 
        //Paging ToolBar 
      { xtype: 'pagingtoolbar', dock: 'bottom', store: 'Metadata', pageSize: 3, displayInfo: true, emptyMsg: 'No items to display', displayMsg: 'Displaying topics {0} - {1} of {2}' }, 

      '->', 
      { text: 'Print', itemId: 'print' }, 
      '-', 
      { text: 'Export', itemId: 'export' } 
     ] 
    }], 
    plugins: [{ 
      ptype: 'rowexpander', 
      rowBodyTpl : [ 
       //... 
          //... 
      ] 
     }] 

}); 

Панель подкачки не показывает никаких проблем, но это не показывает, что в него загружены какие-либо данные или даже разрешено прокрутка. В моем магазине сейчас 14 строк. (Не загружайте нагрузки). Я не использую никаких прокси-серверов, не так ли?

Это мой магазин. Metadata.js

var store = Ext.define('AM.store.Metadata', { 
    extend: 'Ext.data.Store', 
    model: 'AM.model.Metadata', 
    storeId: 'metadatastore', 
    data: [ 
     {TECH_NAME: 'SOME_NAME_A1', KBE_ID: 'RS142', KBE_NAME: 'GL Account', VIEW_NAME: 'SECR_ERROR', DB_SCHEMA: 'EXCEL', PRIVACY_INDICATOR: 'Secure'}, 
     {TECH_NAME: 'OH_HAII', KBE_ID: 'RS103', KBE_NAME: 'MC Account', VIEW_NAME: 'SECR_ERROR', DB_SCHEMA: 'SQL', PRIVACY_INDICATOR: 'Well'}, 
     {TECH_NAME: 'OTHER_NAME_A2', KBE_ID: 'RS142', KBE_NAME: 'Current Number of Shares', VIEW_NAME: 'EQTY_PSTN', DB_SCHEMA: 'SQL', PRIVACY_INDICATOR: 'Alright'}, 
     {TECH_NAME: 'NAMES_STILL_GOING_B3', KBE_ID: 'W001', KBE_NAME: 'Amount for Unrealized Loss or Profit', VIEW_NAME: 'EQTY_PSTN', DB_SCHEMA: 'NO_SQL', PRIVACY_INDICATOR: 'Could be better'}, 
     {TECH_NAME: 'WILL_THEY_END_C4', KBE_ID: 'W003', KBE_NAME: 'Fund ID', VIEW_NAME: 'EQTY_DEAL', DB_SCHEMA: 'SQL', PRIVACY_INDICATOR: 'Ummm', schema: 'Schema 4'}, 
     {TECH_NAME: 'NOT_LIKELY-C5', KBE_ID: 'E101', KBE_NAME: 'Booking Unit', VIEW_NAME: 'EQTY_BL_SHET', DB_SCHEMA: 'ORACLE', PRIVACY_INDICATOR: 'Not secure one bit'}, 
     {TECH_NAME: 'LOOKIE_HERE-D6', KBE_ID: 'E078', KBE_NAME: 'Investment', VIEW_NAME: 'INSMNT', DB_SCHEMA: 'M_ACCESS', PRIVACY_INDICATOR: 'Please hack us'}, 
     {TECH_NAME: 'SOME_NAME_A1', KBE_ID: 'RS142', KBE_NAME: 'GL Account', VIEW_NAME: 'SECR_ERROR', DB_SCHEMA: 'EXCEL', PRIVACY_INDICATOR: 'Secure'}, 
     {TECH_NAME: 'OH_HAII', KBE_ID: 'RS103', KBE_NAME: 'MC Account', VIEW_NAME: 'SECR_ERROR', DB_SCHEMA: 'SQL', PRIVACY_INDICATOR: 'Well'}, 
     {TECH_NAME: 'OTHER_NAME_A2', KBE_ID: 'RS142', KBE_NAME: 'Current Number of Shares', VIEW_NAME: 'EQTY_PSTN', DB_SCHEMA: 'SQL', PRIVACY_INDICATOR: 'Alright'}, 
     {TECH_NAME: 'NAMES_STILL_GOING_B3', KBE_ID: 'W001', KBE_NAME: 'Amount for Unrealized Loss or Profit', VIEW_NAME: 'EQTY_PSTN', DB_SCHEMA: 'NO_SQL', PRIVACY_INDICATOR: 'Could be better'}, 
     {TECH_NAME: 'WILL_THEY_END_C4', KBE_ID: 'W003', KBE_NAME: 'Fund ID', VIEW_NAME: 'EQTY_DEAL', DB_SCHEMA: 'SQL', PRIVACY_INDICATOR: 'Ummm', schema: 'Schema 4'}, 
     {TECH_NAME: 'NOT_LIKELY-C5', KBE_ID: 'E101', KBE_NAME: 'Booking Unit', VIEW_NAME: 'EQTY_BL_SHET', DB_SCHEMA: 'ORACLE', PRIVACY_INDICATOR: 'Not secure one bit'}, 
     {TECH_NAME: 'LOOKIE_HERE-D6', KBE_ID: 'E078', KBE_NAME: 'Investment', VIEW_NAME: 'INSMNT', DB_SCHEMA: 'M_ACCESS', PRIVACY_INDICATOR: 'Please hack us'} 

    ] 


}); 

Любые идеи были бы очень полезны!

+0

предоставьте код для магазина и прокси и прочее. – Reimius

+0

Обновлено, и я не использую прокси. Должна ли я быть? –

ответ

2

Предполагая, что вы используете JSON, то документы на панели инструментов пейджинговой сказать, что формат для JSON должен быть чем-то вроде этого:

{ 
    total: 2000, 
    results: [{'id': 1000, name: 'ted'},{id: 1001, 'name': 'ted'}] 
} 

Это всего помогает настроить панель инструментов подкачки следующим образом:

Ext.create('Ext.data.Store', { 
    ..., 
    pageSize: 100, 
    reader: { 
     type: 'json', 
     root: 'results', 
     totalProperty: 'total' // Tell the toolbar where the result count is 
    } 
}); 

Насколько я могу судить, нет способа автоматически вычислить общий размер набора результатов.

+0

фиксированные результаты, должны были быть массивом. – Reimius

+0

@Reimius спасибо, опечатка –

Смежные вопросы