Bilişim dünyasına kaliteli, özgün ve Türkçe içerikler kazandırmayı hedefleyen bir platform..

friends friends friends

Yii2 Framework Pagination

SiteController.php dosyasında actionIndex içinde aşağıdaki gibi sorgu ile tüm kayıtlar çekilir ve istenilen view sayfasına gönderlir.

public function actionIndex()
{
	use yii\data\Pagination;
	$query = \backend\models\Posts::find();
	$count = $query->count();
	$pagination = new Pagination(['totalCount' => $count, 'pageSize'=>10]);
    //pageSize özelliği her sayfada kaç kayıt gösterilecek

	$posts = $query->offset($pagination->offset)
	->orderBy('postID desc')
	->limit($pagination->limit)
	->all();

	return $this->render('index', [
		 'posts' => $posts,
		 'pagination' => $pagination,
	]);
}

view sayfasında sayfalama işlemleri için aşağıdaki kodları kullanabiliriz.

<?php foreach($posts as $p=>$post):?>
    <h2><?=$post->postTitle?></h2>
<?php endforeach;?>

<?php use yii\widgets\LinkPager;?>
<nav>
	<?=
		LinkPager::widget([
			'pagination' => $pagination,
			'options' => ['class' => 'pagination'],//ul class
			'linkOptions' => ['class' => 'page-link'],
			'pageCssClass' => 'page-item',//li class
			'firstPageCssClass' => 'page-item first',
			'lastPageCssClass' => 'page-item last',
			'prevPageCssClass' => 'page-item prev',
			'nextPageCssClass' => 'page-item next',
			'activePageCssClass' => 'current',
			'disabledPageCssClass' => 'disabled',
			'maxButtonCount' => 4,
			//'nextPageLabel' => '>',
			//'prevPageLabel' => '<',
			'firstPageLabel' => 'Önceki',
			'lastPageLabel' => 'Sonraki',
			'registerLinkTags' => false,
			'hideOnSinglePage' => true,
		]);
	 ?>
</nav>
Yii2 Framework Pagination sayfalama Create pagination Custom Pagination Yii2.0 LinkPager
0 Beğeni
Yii2 Framework
Önceki Yazı

Yii2 Framework - get auto increment id

21 Ekim 2020 tarihinde yayınlandı.
Sonraki Yazı

Yii2 Framework Model Rules Validation

21 Ekim 2020 tarihinde yayınlandı.
arrow