Вопрос

Here is my thread ,i posted the actual problem of paging here in this area. you can help me from this thread sencha forum sencha forum Ext Paging problem with EXt direct Grid panel

First pageSecond page

Нет правильного решения

Другие советы

Finally i got the answer from the forum

My Store Js

var store = Ext.create('Ext.data.Store', {
        model : 'Users',
        remoteSort : true,
        autoLoad : true,
        pageSize: 5, // items per page

        sorters : [{
            property : 'name',
            direction : 'ASC'
        }],

        proxy : {
            type : 'direct',
            directFn : 'Users.showAllUsers',
            reader: {

                    root: 'users'

            }

        }
});

My PHP function

function showAllUsers($params)
{
    $sort = $params->sort[0];
    $field = $sort->property;
    $direction = $sort->direction;
    $start = $params->start;
    $end = $params->limit;

    ($direction == 'ASC' ? 'ASC' : 'DESC');

    $dbh = Dbconfig::dbconnect();

    $stmt = $dbh->prepare("SELECT count(*) FROM users");
    $stmt->execute();
    $number_of_rows = $stmt->fetchColumn(); 

    $sth = $dbh->prepare("SELECT * FROM users ORDER BY name $direction LIMIT $start,$end");
    $sth->execute();
    $dataAll = $sth->fetchAll();


    $data = array(
            "success" => mysql_errno() == 0,
            "total" => $number_of_rows,
            "users" => $dataAll
    );

    return $data;
}

Below is the sample on how your store and sample results should be so that your pagination works as required.

Store should look like below

var myStore = Ext.create('Ext.data.Store', {
 fields: [
     {name: 'firstName', type: 'string'},
     {name: 'lastName',  type: 'string'}
 ],
 proxy: {
     type: 'ajax',
     url: '/users.json',
     reader: {
        type: 'json',
        root: 'records',
        totalProperty:  'recordCount',
        successProperty: 'success'
     }
 }
});

and the results from your server should be like

{
  recordCount: 63,
  records: [
  {
    id: 944,
    firstName: "Shannon",
    lastName: "Joy"
  },
  {
     id: 1819,
     firstName: "Remi"
     lastName: "Lucas"
  },
  .......
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top