2014-10-24 3 views
1

У меня есть новости с комментариями. Я хотел бы постраничные комментарии, но у меня есть ошибки, как это:Ошибки Paginator при использовании элементов

Notice (8): Undefined index: count [CORE\Cake\View\Helper\PaginatorHelper.php, line 646] 

и, конечно, я не вижу цифры, ссылка и т.д.

У вас есть какие-либо идеи, как решить эту проблему? Спасибо!

Компонент:

public function viewFromNewsId($news_id = null) { 
$this->NewsComment->recursive = 0; 
$this->Paginator->settings = array('conditions' => array('NewsComment.news_id' => $news_id, 'NewsComment.is_active' => '1'), 'limit' => 5, 'order' => array('NewsComment.id' => 'desc')); 
$newsComments = $this->Paginator->paginate('NewsComment'); 
if (isset($this->params['requested'])){ 
return $newsComments; 
} 
} 

Элемент:

$newsIdFromUrl = $this->params['pass'][0]; 
$newsComments = $this->requestAction("newsComments/viewFromNewsId/$newsIdFromUrl"); 
foreach($newsComments as $newsComment): 
$this->App->showNewsComment($newsComment); 
endforeach; 
echo $this->Paginator->counter('Liczba newsów: {:count} | '); 
echo $this->Paginator->prev('<< wstecz', null, null, array('class' => 'disabledText')); 
echo $this->Paginator->numbers(array('separator' => ' ', 'before' => ' | ', 'after' => ' | ', 'modulus' => '10')); 
echo $this->Paginator->next('dalej >>', null, null, array('class' => 'disabledText')); 
echo "<br />"; 

Вид: echo $this->element('newsViewComments');

ответ

0

Я нашел ответ сам;)

Проверьте это - возможно, кто-то из вас будет использовать это. Я знаю, что есть много людей с той же проблемой.

Ответ: Просто не использовать элементы, функции представления редактирования в контроллере, как это:

public function view($id = null) { 
$this->Paginator->settings = array('conditions' => array('NewsComment.news_id' => $id), 'limit' => 5, 'order' => array('NewsComment.id' => 'desc')); 
$newsComments = $this->Paginator->paginate('NewsComment'); 


$options = array('conditions' => array('News.' . $this->News->primaryKey => $id)); 
$news = $this->News->find('first', $options); 
$this->set(compact('news', 'newsComments')); 
} 

Как, у вас есть две переменные в вашем view.ctp: первый один $news - с новостями данных как заголовок и текст, а второй $newsComments для использования с foreach и pagination

Но, помните о правильной ассоциации в моделях.

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