edinaldofox/crud-generator-bundle

用于生成 CRUD 的 Symfony3 扩展包,具有分页、过滤、排序、页面大小、批量删除和 Bootstrap3 标记。此生成器支持 Doctrine 关联映射。

安装: 7

依赖者: 0

建议者: 0

安全性: 0

星星: 0

关注者: 1

分支: 17

类型:symfony-bundle

v3.0.7 2018-02-11 18:06 UTC

README

带有分页、过滤、Twitter Bootstrap 3.3.6 标记和许多其他功能的 Symfony3 CRUD 生成器扩展包。它易于使用且完全可定制。

旨在恢复旧 Symfony 1.4 管理生成器的功能,但基于 SensioGeneratorBundle 扩展,增加了额外的选项和功能。

Build Status SensioLabsInsight Latest Stable Code Coverage Scrutinizer Code Quality Total Downloads

特性

  • 分页 - 使用 PagerFanta
  • 过滤(使用单多搜索输入或表单)
  • 支持在表单和过滤器中为多对一、一对一和多对多(如果关系是拥有方)的 Doctrine 关联映射
  • 排序
  • 每页项目数
  • 多行批量操作(删除)
  • 从索引中删除
  • 在生成的视图中设置您的基模板。
  • 可以设置所有生成的文件的保存路径(默认为 app/Resources)。
  • 可以不生成显示代码。
  • 大多数特性都是可选的,您可以根据需要灵活地生成 CRUD。
  • 支持 PostgreSQL 9.5.11

截图

多搜索过滤器

Screenshot

表单过滤器

Screenshot

安装

此扩展包与 Symfony 2.8/3.0 或更高版本兼容。

使用 composer

Symfony >= 2.8

composer require petkopara/crud-generator-bundle

在您的 AppKernel.php 中注册 CRUD 和过滤器扩展包

new Lexik\Bundle\FormFilterBundle\LexikFormFilterBundle(),
new Petkopara\MultiSearchBundle\PetkoparaMultiSearchBundle(),
new Petkopara\CrudGeneratorBundle\PetkoparaCrudGeneratorBundle(),

安装资源。

php bin/console assets:install --symlink

对于表单的 Bootstrap 主题,将以下内容添加到您的 app/config/config.yml

twig:
    form_themes:
	- 'bootstrap_3_layout.html.twig' 

如果您正在使用自己的基模板,请确保在模板中包含扩展包的 JavaScript 文件。

<script src="{{ asset('bundles/petkoparacrudgenerator/js/petkopara-crud-generator.js') }}"></script>

依赖

此扩展包扩展了 SensioGeneratorBundle。使用 PagerFanta 进行分页。过滤使用 PetkoparaMutiSearchBundleLexikFormFilterBundle

用法

从控制台使用以下命令

php bin/console petkopara:generate:crud

并按照向导步骤操作。

可用的新选项

该扩展包的默认行为是生成完整的 CRUD,但您可以根据需要自定义生成的内容。与 doctrine crud 生成器相比,扩展包添加了一些新参数来控制所有新功能。

  • --filter-type - 要使用的过滤器类型。有三个选项

    • input - 使用多搜索输入。
    • form - 使用 Lexik 表单过滤器。
    • none - 不会生成任何过滤器代码。
  • --template - 视图的基模板名称,视图将覆盖它。例如,将其设置为 --template=base.html.twig 以扩展您的基模板。(默认为 PetkoparaCrudGeneratorBundle::base.html.twig)。

  • --without-write - 扩展包的默认行为是生成写代码,因此 --with-write 选项被转换为这个。

  • --without-show - 有时您不需要显示代码,因此引入了此选项。

  • --without-sorting - 不生成排序代码。

  • --without-page-size - 不生成每页项目数代码。

  • --without-bulk - 不生成批量操作代码。

  • --bundle-views - 是否将视图文件存储在扩展包目录中。默认情况下,视图存储在 app/Resources/views/ 中。

别忘了,这只是一个CRUD生成器,您可以自由更改从这个捆绑包中生成的所有内容。

模板

每个生成的文件都基于一个模板。有默认模板,但可以通过在以下位置之一放置自定义模板来覆盖默认模板,按照优先级顺序:

BUNDLE_PATH/Resources/PetkoparaCrudGeneratorBundle/skeleton/crud
APP_PATH/Resources/PetkoparaCrudGeneratorBundle/skeleton/crud

并且

BUNDLE_PATH/Resources/PetkoparaCrudGeneratorBundle/skeleton/form
APP_PATH/Resources/PetkoparaCrudGeneratorBundle/skeleton/form

作者

佩特科·彼得科夫 - petkopara at gmail dot com

若泽·埃迪纳尔多 - edinaldofox@gmail.com

许可证

CrudGeneratorBundle遵循MIT许可证。