class User_IndexController extends Zend_Controller_Action { //jakieś inne metody i akcje kontrolera public function userAccountAction() { //inny kod userAccount //paginator settings $um = new User_Model_UserMapper(); //model klasy użytkownika $paginator_user = $um->getById($this->view->uid); //pobieramy użytkownika z id $paginator_user->getPaginator(); //pobieramy wartość dla paginatora dla użytkownika z id if ($bm == null) $bm = new User_Model_BlogMapper(); //model klasy obsługującej tabelę z blogami $selectable = $bm->selectPaginator(); //pobranie source adapter dla paginatora $paginator = new Zend_Paginator(new Zend_Paginator_Adpater_DbSelect($selectable)); $paginator->selectItemCountPerPage($paginator_user) //ustawienia zmiennych paginatora ->setCourrnetPageNumber($this->_getParam('page', 1)); $this->view->paginator = $paginator; //przekazanie paginatora do widoku $this->view->formBlogEdit = $fbe; //przekazanie formularza z blogami do widoku //inny kod akcji userAccount } } class User_Model_BlogMapper extends Suuper_Mapper { public function selectPaginator() { $db = Zend_Db_Table::getDefaultAdapter(); $selectable = new Zend_Db_Select($db); $selectable->from('blogi'); //blogi nazwa tabeli return $selectable; } }
Widok jest nieważny na razie bo dostaje błąd:
Warning: include_once(Zend/Paginator/Adpater/DbSelect.php) [function.include-once]: failed to open stream: No such file or directory in /usr/share/php/Zend/Zend/Loader.php on line 146
Plik jest w: /usr/share/php/Zend/Zend/Paginator/Adapter/DbSelect.php a może jest jakaś inna metoda ustawienia source adpater dla paginatora ?
JUŻ NIEWAŻNE