2010-01-28 3 views
3

зарегистрировать данные в кэш, и я вижу foliowing:Zend_Paginator и кеш. Как я могу прочитать ДАННЫЕ, что Я послал в кэш

Zend_Cache --- Zend_Paginator_1_42242d5fa3c4e4b7758810c276163e8a

, но я не могу читать.

$request = $this->getRequest(); 
$q = new Model(); 
$paginator = Zend_Paginator::factory($q->fetchAll()); 
$paginator->setCurrentPageNumber($request->getParam('p')); 
$paginator->setItemCountPerPage(40); 
$this->view->q = $paginator; 

$fO = array('lifetime' => 3600, 'automatic_serialization' => true); 
$bO = array('cache_dir'=> APPLICATION_PATH . '/cache/'); 
$cache = Zend_cache::factory('Core', 'File', $fO, $bO); 
Zend_Paginator::setCache($cache); 

ответ

0

Проверьте, включен ли профайлер DB. Кажется, что существует конфликт между профилировщиком БД и Zend_Paginator_Adapter_DbTableSelect.

Я также создал новый класс, который расширяет Paginator Zend_Paginator и я изменил getItemsByPage функцию.

$offset = ($pageNumber - 1) * $this->getItemCountPerPage(); 
$items = $this->_adapter->getItems($offset, $this->getItemCountPerPage()); 

Эти две строки кода следует добавить самого начало, после $pageNumber = $this->normalizePageNumber($pageNumber).

 Смежные вопросы

  • Нет связанных вопросов^_^