Sunday, December 28, 2014

Optimize Zend Pagination(Display Only limit rows)

We see while using Zend_Paginator class for paging, It fetch out all records from database and then fraction it in paging. Then what is use of paging?
We will do some changes on code to avoid fetching all records from DB.

In your Model just pass your query instance in "Zend_Paginator_Adapter_DbSelect" class. It automatically make use of offset and limit, basis on your defined setItemCountPerPage(10) in your controller.

In Model:
===============
function getCustomerList(){
        $db = Zend_Registry::get('db');              
        $sql = $db->select()->from('table_name');
        $adapter = new Zend_Paginator_Adapter_DbSelect($sql);
      
        return $adapter;
}

Thanks
Arun Kumar