0

PagingToolbarを使用して結果検索をフィルタリングしていますが、ページごとに20件の結果を表示したいのですが、グリッドにはすべてのレコードが表示されます。

私のグリッドのbbar

bbar: Ext.create('Ext.PagingToolbar', 
store: store,
pageSize: 20,
displayInfo : true,
plugins: Ext.create('Ext.ux.ProgressBarPager', {})
}),

私の店

Ext.define('Mystore', {
extend: 'Ext.data.Store',
model: 'Mymodel',
pageSize: 20,
autoLoad: true,
remoteSort: true,
proxy: {
    type: 'rest',
    url: 'search',
    reader: {
        type: 'json',
        root: 'root',
        idProperty: 'id'
    },
    writer: {
        type: 'json',
        writeAllFields: true
    }
}

});

誰かが私を助けることができますか?ありがとう。

4

2 に答える 2

2

ストアにデータを提供するRESTサービスは、ストアが一度に 1 ページの結果を要求できるように、、、および/またはパラメータ/searchをサポートする必要があります。startlimitpage

このパラメーターをサポートするlimitには、サービスで返される結果の数を、そのパラメーターで指定された数以下に制限する必要があります。通常は、結果を提供するために使用しているデータベース クエリに制限値を渡すことで実装します。

于 2012-10-10T20:04:32.100 に答える
2

Store には start と limit を含むこのパラメーターが含まれている必要があり、バックエンドはこれらのパラメーターを使用する必要があります。

baseParams : { 開始:0, 制限:20 }

Java バックエンドでは、

            String startPage = request.getParameter("start");
    String limits = request.getParameter("limit");

これは、グリッドの一種のフィルターです。

于 2012-10-11T07:20:51.520 に答える