Hi Serkan, in this case you may want the getAllUsers method return the paginator or create a getAllUsersPaginator method, so you can pass the Zend_Db_Table_Select object to the paginator.
It doesn't really look like best programming practices, but I think this should work: //model: public function getAllUsersPaginator($pageNumber = 1){ $select = $this->select() ->setIntegrityCheck(false) ->from(array('u'=>'user'),array('*')) ->joinLeft(array('ud'=>'user_detail'), 'u.id_user = ud.id_user') ->order(array('ud.name','ud.surname')); $paginator = new Zend_Paginator(new Zend_Paginator_Adapter_DbTableSelect($select); $paginator->setCurrentPageNumber($pageNumber); $paginator->setItemCountPerPage(10); return $paginator; } //controller: public function IndexAction() { $paginator = $this->user->getAllUsersPaginator($this->_getParam('page')); //Do whatever you want with it here... } Regards, -- Alayn Gortazar El mar, 06-07-2010 a las 17:12 +0300, Serkan Temizel escribió: > I found an example it seems to work but I think it does not filter the > result at sql query level. > > controller: > > public function indexAction() { // action body > > $dbResult = $this->user->getAllUsers (); > > $pageNumber = 10; > $itemNumber = 10; > > $paginator = Zend_Paginator::factory ( $dbResult ); > $paginator->setItemCountPerPage ( $pageNumber ); > $paginator->getItemsByPage ( $itemNumber ); > $paginator->setCurrentPageNumber ( $this->_getParam > ( 'page' ) ); > Zend_Paginator::setDefaultScrollingStyle ( 'Sliding' ); > $view = new Zend_View ( ); > $paginator->setView ( $view ); > > $this->view->users = $paginator; > $this->view->paginator = $paginator; > > } > model: > > public function getAllUsers(){ > > $select = $this->select() > ->setIntegrityCheck(false) > ->from(array('u'=>'user'),array('*')) > ->joinLeft(array('ud'=>'user_detail'), 'u.id_user > = ud.id_user') > ->order(array('ud.name','ud.surname')); > $result = $this->fetchAll($select); > > return $result; > } > > On Tue, Jul 6, 2010 at 5:06 PM, Serkan Temizel > <serkantemi...@gmail.com> wrote: > Hi, > > Do one of you have an example code for model - controller > paginator. Exapmles on web are mostly in a controller but I > want to manage DB works in my model. > > thanks > El mar, 06-07-2010 a las 17:12 +0300, Serkan Temizel escribió: > I found an example it seems to work but I think it does not filter the > result at sql query level. > > controller: > > public function indexAction() { // action body > > $dbResult = $this->user->getAllUsers (); > > $pageNumber = 10; > $itemNumber = 10; > > $paginator = Zend_Paginator::factory ( $dbResult ); > $paginator->setItemCountPerPage ( $pageNumber ); > $paginator->getItemsByPage ( $itemNumber ); > $paginator->setCurrentPageNumber ( $this->_getParam > ( 'page' ) ); > Zend_Paginator::setDefaultScrollingStyle ( 'Sliding' ); > $view = new Zend_View ( ); > $paginator->setView ( $view ); > > $this->view->users = $paginator; > $this->view->paginator = $paginator; > > } > model: > > public function getAllUsers(){ > > $select = $this->select() > ->setIntegrityCheck(false) > ->from(array('u'=>'user'),array('*')) > ->joinLeft(array('ud'=>'user_detail'), 'u.id_user > = ud.id_user') > ->order(array('ud.name','ud.surname')); > $result = $this->fetchAll($select); > > return $result; > } > > On Tue, Jul 6, 2010 at 5:06 PM, Serkan Temizel > <serkantemi...@gmail.com> wrote: > Hi, > > Do one of you have an example code for model - controller > paginator. Exapmles on web are mostly in a controller but I > want to manage DB works in my model. > > thanks >