Zend_Paginator с результатом Zend_Db_Table_Abstract

#zend-framework #zend-paginator

#zend-framework #zend-paginator

Вопрос:

у меня есть много классов в каталоге модели, которые являются расширением Zend_Db_Table_Abstract.

но мне нужно использовать zend_paginator, и это должно привести к Zend_Db_Select!!

итак, когда я использую этот код (productCat — это класс модели)

 $productCat = new ProductCat();
    $rows = $productCat->FetchOrderByPriority();

    // Get a Paginator object using Zend_Paginator's built-in factory.
    $paginator = Zend_Paginator::factory($rows);
$this->view->paginator = $paginator;    
  

это не работает!

он показывает мне эту ошибку :

 Catchable fatal error: Object of class Zend_Db_Table_Row could not be converted to string in 
  

это мой код просмотра :

 <ul><?php foreach ($this->paginator as $item): ?> 
<li><?php echo $item; ?></li><?php endforeach; ?></ul>
  

есть ли какая-нибудь идея?

Комментарии:

1. Пожалуйста, предоставьте больше информации, чем «это не работает».

Ответ №1:

Разбивка на страницы определенно работает. Проблема в вашем представлении, где вы пытаетесь echo $item .

И это, очевидно, не работает, поскольку Zend_Paginator::factory($rows) вернул набор строк; поэтому, когда вы выполняете итерацию по $paginator объекту, вы получаете объекты Zend_Db_Table_Row типа, и вы просто не можете echo их.

Я полагаю, что вы пытаетесь сделать с echo определенным свойством item объекта, что-то вроде:

 echo $item->name;