jzechy / zetgrid

用于在Nette中绘制列表的简单组件(datagrid)。

1.0.0 2016-03-21 06:23 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:58:39 UTC


README

Latest stable Downloads Total Open Issues

ZetGrid 是一个简单的 Nette 组件,允许创建所谓的datagrid,程序员可以根据自己的需求在运行时进行填充,例如在遍历实体列表时。

该组件作为一个工厂,你可以将其添加到配置文件中,然后只需创建其实例。

services:
	- Zet\Grid\IGridFactory

Composer

composer require jzechy/zetgrid

示例代码

protected function createComponentUserGrid() {
		$grid = $this->gridFactory->create();

		$header = $grid->addHeader();
		$header->addColumn("#");
		$header->addColumn("Uživatelské jméno");
		$header->addColumn("Email");
		$header->addColumn();

		foreach($this->getUsers() as $user) {
			$row = $grid->addRow();
			$row->addColumn($user->getId());
			$row->addColumn($user->getUsername());
			$row->addColumn($user->getEmail())
				->setLink("mailto:". $user->getEmail());

			$buttons = $row->addColumn()->addClass("text-right");
			$buttons->addButton()
				->addAttribute("title", "Upravit uživatele")
				->addClass("btn btn-warning btn-xs")
				->setIcon("glyphicon glyphicon-pencil")
				->setLink($this->link("edit", $user->getId()));
			$buttons->addButton()
				->addAttribute("title", "Smazat uživatele")
				->addClass("btn btn-danger btn-xs")
				->setIcon("glyphicon glyphicon-remove")
				->setLink($this->link("delete", $user->getId()));
		}

		return $grid;
	}