aleswita/visualpaginator

Nette 框架的视觉分页器。

v4.0.2 2021-04-06 11:56 UTC

This package is auto-updated.

Last update: 2024-09-10 16:03:35 UTC


README

Nette 框架的视觉分页器。

Build Status Coverage Status PHPStan

安装

安装 AlesWita/VisualPaginator 的最佳方式是使用 Composer

$ composer require aleswita/visualpaginator

使用方法

Neon

services:
	- AlesWita\VisualPaginator\VisualPaginatorFactory

展示器

<?php declare(strict_types = 1);

use AlesWita\VisualPaginator\VisualPaginator;
use AlesWita\VisualPaginator\VisualPaginatorFactory;
use Nette\Application\UI\Presenter;

final class HomePresenter extends Presenter
{

	/** @inject */
	public VisualPaginatorFactory $visualPaginatorFactory;

	public function actionDefault(): void
	{
	    $this['paginator']->setItemCount(1000);
	    $offset = $this['paginator']->getOffset();
	    $itemsPerPage = $this['paginator']->getItemsPerPage();

	    ['SELECT * FROM `orders` LIMIT ? OFFSET ?', $itemsPerPage, $offset];
	}

	protected function createComponentPaginator(): VisualPaginator
	{
		$paginator = $this->visualPaginatorFactory->create();

		$paginator->ajax = true;
		$paginator->canSetItemsPerPage = true;
		$paginator->templateFile = __DIR__ . '/my_awesome_template.latte';

		return $paginator;
	}

}

模板

{control paginator}

自定义分页模板

{templateType AlesWita\VisualPaginator\Template}
...