2015-01-07 2 views
0

Я сейчас пытаюсь изменить разбивку на страницы этой страницы (http://industrialtimesinc.com/index.php/issues) с 10 по 12 или 15 раз на каждой странице. Я попытался изменить pageSize на 12 и, похоже, не работает. Я хотел бы изменить только разбивку страницы этой страницы, а не всю разбивку на страницы на всей платформе yii. Любая информация поможет. Спасибо.yii pagination for 1 страница

/** 
* 
*/ 
public function actionIndex() 
{ 
    $dataProvider=new CActiveDataProvider('Issues',array(
      'criteria'=>array(
       'order'=>'date DESC', 
      ))); 
     $this->render('index',array(
      'dataProvider'=>$dataProvider, 
      $dataProvider->pagination = array('pageSize'=>15), 
     )); 
} 

Вид:

<h1>Publications</h1> 
<?php 
if(!Yii::app()->user->isGuest){ 
$this->menu=array(
array('label'=>'Create Issues', 'url'=>array('create')), 
array('label'=>'Manage Issues', 'url'=>array('admin')), 
);} else{?> 
<div class="right_side" style="position: absolute; margin-left: 720px; width: 200px;;"><!--right Col--> 
    <div class="right_ads"> 
     <?php 
     echo $this->renderPartial('/site/container/right_ads', array('type' => 'normal','amount' => 4)); 
     echo $this->renderPartial('/site/container/right_ads', array('type' => 'auction','amount' => 3)); 
     ?> 
    </div> 
</div> 

<?php } ?> 

<?php $this->widget('zii.widgets.CListView', array(
    'dataProvider'=>$dataProvider, 
    'itemView'=>'_view', 
)); ?> 
+0

Pagination больше относится к 'CGridView', но вы вставили какой-то код, используемый для' CDetailView'? Вы уверены, что мы смотрим на правильный код? –

+0

Я считаю, что вы правы. Кажется, я искал неправильный код. Я должен был смотреть на index.php представления. Я только что обновил код. –

ответ

0

Итак, проблема заключалась в том, что мне нужно было отредактировать элемент управления, который отображает представление, но не устанавливает pagination = false. То, что мне нужно было сделать, это установить для параметра pageSize значение 12 или 15. вот код.

/** 
* Lists all models. 
*/ 
public function actionIndex() 
{ 
    $dataProvider=new CActiveDataProvider('Issues',array(
      'criteria'=>array(
       'order'=>'date DESC', 
      ))); 
     $this->render('index',array(
      'dataProvider'=>$dataProvider, 
      $dataProvider->pagination = array('pageSize'=>15), 
     )); 
} 
0

Я думаю, что идея состоит в том, чтобы постраничной данные более после того, что данные извлекаются из БД.

Таким образом, вы можете использовать этот подход: http://yiibook.blogspot.co.uk/2012/07/yii-pagination-using-cdbcriteria.html для фильтрации данных из БД.

+0

Это не совсем то, что я пытаюсь сделать. Мне просто нужно изменить размер страницы. –

+0

Я вижу, рад, что вы нашли решение :) –

0

В контроллере, который передает данные в это представление, попробуйте установить $dataProvider->pagination = false перед отображением страницы.

+0

Я вообще не пытаюсь избавиться от разбивки на страницы. –

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