domenik88/datagrid-bundle

Symfony Datagrid Bundle

安装: 8

依赖者: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 344

类型:symfony-bundle

4.0.3.2 2020-11-24 09:37 UTC

README

受 Zfdatagrid 和 Magento Grid 启发的 Symfony 数据网格。
此捆绑包由 Stanislav Turza (Sorien) 创始。

Build Status Coverage Status Stories in Ready Gitter

请参阅 变更日志2.0 升级

特性

  • 支持实体(ORM)、文档(ODM)和向量(数组)源
  • 支持排序和过滤,带有运算符(比较运算符、范围、以...开始/结束、包含/不包含、是否定义、正则表达式)
  • 自动识别列类型(文本、数字、布尔值、数组、日期时间、日期、...)
  • 支持日期时间、日期和数字列的本地化(小数、货币、百分比、持续时间、科学、文字表示)
  • 使用网格数据或值数组的输入、选择、复选框和单选按钮过滤
  • 导出(CSV、Excel、PDF、XML、JSON、HTML、...)
  • 批量操作
  • 行操作
  • 支持与实体源映射的字段
  • 使用安全角色保护列、操作和导出
  • 注解和 PHP 配置
  • 外部过滤器框
  • Ajax 加载
  • 分页(您也可以使用 Pagerfanta)
  • 列宽和列对齐
  • 翻译标题前缀
  • 同一页面的多网格网格管理器
  • ORM 和 ODM 源的组配置
  • 轻松覆盖模板(twig)
  • 创建自定义列和过滤器
  • ...

文档

请参阅 摘要

截图

CSS 风格文件 中的完整示例

test

英文中的简单示例,包含外部过滤器框

test

法文中的相同示例

test

这些截图中使用的数据(这是一个 phpMyAdmin 截图)

test

简单的 ORM 源网格

<?php
namespace MyProject\MyBundle\Controller;

use APY\DataGridBundle\Grid\Source\Entity;

class DefaultController extends Controller
{
	public function myGridAction()
	{
		// Creates a simple grid based on your entity (ORM)
		$source = new Entity('MyProjectMyBundle:MyEntity');

		// Get a Grid instance
		$grid = $this->get('grid');

		// Attach the source to the grid
		$grid->setSource($source);

		// Return the response of the grid to the template
		return $grid->getGridResponse('MyProjectMyBundle::myGrid.html.twig');
	}
}

在实体中简单配置网格

<?php
namespace MyProject\MyBundle\Entity

use Doctrine\ORM\Mapping as ORM;
use APY\DataGridBundle\Grid\Mapping as GRID;

/**
 * @GRID\Source(columns="id, my_datetime")
 */
class MyEntity
{
	/*
	 * @ORM\Column(type="integer")
	 */
	protected $id;

	/*
	 * @ORM\Column(type="datetime")
	 */
	protected $my_datetime;
}

在 twig 模板中显示网格

<?php
<!-- MyProject\MyBundle\Resources\views\myGrid.html.twig -->

{{ grid(grid) }}

并清除您的缓存。