yii2.0AR两表联查+分页 [ 2.0 版本 ]
AR的两表联查在前边已经说过,在此不在赘述!现在记录一下简单的yii2.0的分页
算不上教程,看手册就懂得东西!烂大街的!
非话不多说,直接上代码,加注释!
一.在控制器层 在引入AR Model 之外 ,再引入一个插件 use yii\data\Pagination;
<?php
/**
 * Created by PhpStorm.
 * User: wangj
 * Date: 2017/5/31
 * Time: 11:10
 */
namespace backend\controllers;
use yii;
use yii\web\Controller;
use backend\models\ArticleModel;
use backend\models\ArticleFrom;
use backend\models\TypeModel;
//下边是分页需要的插件
use yii\data\Pagination;
class ArticleController extends Controller{
    //两表  查询
    public function actionIndex(){
        //$res = ArticleModel::find()->joinWith('type')->select('id,new,t_name,article.t_id')->orderBy('id desc')->asArray()->all();
       //下边是 分页 + 两表联查
       $data = ArticleModel::find();                              //设置展示 条数
        $pages = new Pagination(['totalCount' =>$data->count(), 'pageSize' => '5']);                                  //没有asArray则为对象
        $res = $data->joinWith('type')->select('id,new,t_name,article.t_id')->offset($pages->offset)->limit($pages->limit)->asArray()->all();
      //  print_r($res);die;
        //返回值                      //传参两个  参数一 数据   参数二 分页
        return $this->render('index',['res'=>$res,'pages'=>$pages]);
    }
    二。在视图层  同样需要加入一个 use yii\widgets\LinkPager;  此是为了超链接 页码
      
        <?php foreach($res  as $v){?>
      
    
        <?php } ?>
  
    // 比正常的多此句
    <?= LinkPager::widget(['pagination' => $pages]); ?>
因为没有使用表单小部件 是原生的Html 
总结 View 上加了两句代码
就O K 了
奔跑吧笨笨
            注册时间:2017-05-11
最后登录:2019-12-18
在线时长:10小时12分
    最后登录:2019-12-18
在线时长:10小时12分
- 粉丝3
 - 金钱690
 - 威望20
 - 积分990
 
共 0 条评论