方法一
控制器内
<?php
//other code
use yii\data\Pagination;
public function actionArticlelist()
{
//分页读取类别数据
$model = Article::find()->with('cate');
$pagination = new Pagination([
'defaultPageSize' => 3,
'totalCount' => $model->count(),
]);
$model = $model->orderBy('id ASC')
->offset($pagination->offset)
->limit($pagination->limit)
->all();
return $this->render('index', [
'model' => $model,
'pagination' => $pagination,
]);
}
?>
---
视图内
<?php
use yii\widgets\LinkPager;
use yii\helpers\Html;
use yii\helpers\Url;
//other code
foreach ($models as $model) {
// 在这里显示 $model
}
// 显示分页
echo LinkPager::widget([
'pagination' => $pagination
]);
?>
方法二
控制器内
<?php
$query = Article::find()->with('cate')->orderBy(create_at desc);
$provider = new ActiveDataProvider([
'query' => $query,
'pagination' => [
'pageSize' => 3,
],
]);
return $this->render('index', [
'model' => $query,
'dataProvider' => $provider
]);
?>
视图中
<?php
echo \yii\grid\GridView::widget(
[
'dataProvider' => $providerData,
]
);