Yii2中自带分页类实现分页

1.首先写控制器层

  先引用pagination类

      use yii\data\Pagination;

  写自己的方法:

     function actionFenye(){
        $data = Field::find();  //Field为model层,在控制器刚开始use了field这个model,这儿可以直接写Field,开头大小写都可以,为了规范,我写的是大写
        $pages = new Pagination(['totalCount' =>$data->count(), 'pageSize' => '2']);    //实例化分页类,带上参数(总条数,每页显示条数)
        $model = $data->offset($pages->offset)->limit($pages->limit)->all();
        return $this->renderPartial('fenye',[
            'model' => $model,
            'pages' => $pages,
        ]);
    }

2.model层就是直接用../yii/frontend/web/index.php?r=gii 生成的model(详细链接)

3.最后是显示页面

   <?php
     use yii\widgets\LinkPager;
   ?>

<?php foreach($model as $key=>$val){ ?>
 
        <?= $val->Id; ?>     //相当于  <?php  echo $val['Id'];  ?>
        <?= $val->Field; ?>  //相当于  <?php  echo $val['Field'];  ?>

<?php } ?>

<?=
LinkPager::widget([
      'pagination' => $pages,
    ]);
?>

 

剧终..................................................

最后说说本人在做的时候遇到的问题,希望能帮到大家:

 我做出来样式怎么这么丑,人家的分页页码都是自带样式的,之后发现,

当你在控制器层加上这个   $this->layout='main';(方法刚开始加),也就是引入了这个框架最原始的公共头部,这个main.php在view/layouts/main.php ,然后在控制器渲染页面的

代码那 的renderPartial,改为 render, renderPartial是表示显示 显示页面的时候不加框架自带的公共头部,  为什么要引入这个原始的公共头部呢?? 是因为他这个头部里面有我们分页需要的样式,引入后成这个样子了:

 

这个时候就基本完美了,样式也出来了,

可是我不想要她的公共头部,太丑了,或者,我要定义自己的公共头,但是我还要他的样式,这个时候,你可以在这个显示页面查看源代码,找找他的css样式,

我查看源码后,把它的css样式粘贴到我的显示页面 

<link href="/yii/frontend/web/assets/76f2e072/css/bootstrap.css" rel="stylesheet">  

这样就可以随心所欲的改啦..(*^__^*)

   大功告成..

友情链接   http://www.cnblogs.com/laowenBlog

需要深度学习的链接: http://blog.csdn.net/m_422744746/article/details/51470052

            

 

转载于:https://www.cnblogs.com/gyrgyr/p/5249392.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值