Maison >php教程 >PHP开发 >Méthode de mise en œuvre de la pagination personnalisée de l'opération Yii View

Méthode de mise en œuvre de la pagination personnalisée de l'opération Yii View

高洛峰
高洛峰original
2016-12-30 16:11:101636parcourir

L'exemple de cet article décrit la méthode d'implémentation de pagination personnalisée de l'opération de vue Yii. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

1 Lorsque le fichier de vue appelle cgridview, clistview, appelez la méthode de pagination personnalisée

<?php $this->widget(&#39;zii.widgets.grid.CGridView&#39;, array(
 &#39;id&#39;=>&#39;news-grid&#39;,
 &#39;dataProvider&#39;=>$model->search(),
 &#39;filter&#39;=>$model,
 &#39;template&#39;=>&#39;{items}{summary}{pager}&#39;,
  &#39;selectableRows&#39;=>2,
  &#39;pager&#39;=>&#39;ZPager&#39;,
  &#39;summaryText&#39;=>&#39;页数:{pages}/{page}页&#39;,
  &#39;columns&#39;=>array(
  array(
   &#39;class&#39;=>&#39;CCheckBoxColumn&#39;,
   &#39;footer&#39;=>&#39;<button onclink="deleteAll()">button</button>
      <button onclink="refashAll()">button</button>&#39;,
   &#39;footerHtmlOptions&#39;=>array(&#39;colspan&#39;=>5),
   &#39;selectableRows&#39;=>2,
  ),
  &#39;id&#39;,
  array(&#39;name&#39;=>&#39;title&#39;,
    &#39;htmlOptions&#39;=>array(&#39;width&#39;=>&#39;20%&#39;),
    &#39;value&#39;=>&#39;mb_substr($data->title,0,10,"utf-8")&#39;,
   ),
  array(&#39;name&#39;=>&#39;content&#39;,
    &#39;htmlOptions&#39;=>array(&#39;width&#39;=>&#39;20%&#39;),
    &#39;value&#39;=>&#39;mb_substr(strip_tags($data->content),0,10,"utf-8")&#39;,
   ),
  array(&#39;name&#39;=>&#39;type&#39;,
    &#39;value&#39;=>&#39;News::model()->getNewsType($data->type)&#39;,
   ),
  &#39;user&#39;,
  array(&#39;name&#39;=>&#39;status&#39;,
    &#39;value&#39;=>&#39;News::model()->getNewsStatus($data->status)&#39;,
    ),
  array(
   &#39;class&#39;=>&#39;CButtonColumn&#39;,
   &#39;buttons&#39;=>array(
    &#39;view&#39;=>array(&#39;visible&#39;=>&#39;false&#39;),
    //&#39;delete&#39;=>array(&#39;click&#39;=>&#39;true&#39;),
   ),
  ),
 ),
));

2. fichier de classe de pagination et modifiez-le pour qu'il devienne votre propre méthode de pagination

framework/web/widgets/pagers/CListPager.php Copiez-le et nommez-le dans protected/components/zpager.php Modifiez le nom de la classe

framework/web/widgets/ pages/pager.css Copiez le fichier de style correspondant dans protected/components/css/pager.css

Modifiez le répertoire de chargement CSS de zpager.php

public static function registerCssFile($url=null)
{
 if($url===null)
  $url=CHtml::asset(Yii::getPathOfAlias(&#39;application.components.css.pager&#39;).&#39;.css&#39;);
 Yii::app()->getClientScript()->registerCssFile($url);
}

3. En modifiant le fichier de style Css, vous pouvez également modifier le programme qui génère la liste pour atteindre l'objectif de modification de la classification.

J'espère que cet article sera utile à la conception de programmes PHP basés sur le framework Yii.

Pour plus d'articles liés à la méthode d'implémentation de pagination personnalisée de l'opération de vue Yii, veuillez faire attention au site Web PHP chinois !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn