imp/admingenerator-bundle

基于 YAML 配置和 Twig 模板引擎的 Symfony2 Admingenerator

安装: 5

依赖者: 0

建议者: 0

安全: 0

类型:symfony-bundle

dev-master / 2.3.x-dev 2016-03-17 11:37 UTC

This package is auto-updated.

Last update: 2024-09-11 13:46:55 UTC


README

KnpBundles Badge project status build status Latest Stable Version Total Downloads

这是 Symfony2 的真实缺失的 Admin Generator!

本包是一个基于 YAML 配置和 Twig 模板引擎的 Symfony2 Admin Generator。它受到 fzaninotto/Doctrine2ActiveRecord 的启发。

在 Twitter 上关注我们!

不要错过 Symfony2 Admin Generator 的任何更新!今天加入 Twitter 并 关注我们

特性

  • 使用一个命令生成模型视图和控制器
  • 在一个(每个模型)YAML 文件中配置所有选项
  • 包括标准操作:创建/编辑、显示、删除、列表/嵌套集合树列表
  • 灵活和可扩展:您可以轻松地添加或覆盖几乎所有内容!
  • 支持大多数流行的模型管理器:Doctrine ORMDoctrine ODMPropel
  • 引入嵌套表单:在一个表单中创建/编辑对象及其所有关联对象!
  • 管理一对一、一对多、多对一和多对多的关系
  • 完全可翻译:所有字段元素(标签、占位符、辅助工具)、所有小部件、操作、错误消息和标题
  • 列表特性:可排序、分页、筛选、批量操作、作用域
  • 嵌套集合树列表特性:拖放管理您的树
  • 新建/编辑特性:分组、标签页、为 集合、文件上传、日期和实体 字段提供酷小部件
  • 翻译成 DE、EN(默认)、ES、FA、FR、GR、IT、JA、NL、PL、PT、RO、RU、SL、TR、UK(您可以轻松贡献以添加自己的语言)
  • 操作、列和表单字段的凭据
  • 基于 twitter bootstrap 的完整管理员设计 (见下一节)
  • ... 以及更多!

本捆绑包的图片

Preview of list

Preview of edit

Preview of dashboard

重要提示

文档目前正在重写。旧文档可以在

对此造成的麻烦表示歉意,我们将尽快修复!

安装

所有安装说明都位于 文档 中。

文档

本捆绑包的文档位于 Resources/doc 目录中。请先阅读 目录

翻译

如果您希望使用此捆绑包中提供的默认文本,请确保您在配置中启用了翻译器。

# app/config/config.yml

framework:
    translator: ~

有关翻译的更多信息,请参阅 Symfony 文档

安装

安装是一个 3 步过程

  1. 使用 composer 下载 NitraThemeBundle
  2. 启用捆绑包
  3. 配置 NitraThemeBundle

步骤 1:使用 composer 下载 NitraThemeBundle

在您的 composer.json 中添加 NitraThemeBundle

{
    "require": {
        "nitra/admingenerator-generator-bundle": "2.3.*@dev"
    }
}

现在告诉 composer 下载捆绑包,运行以下命令

$ php composer.phar update nitra/admingenerator-generator-bundle

Composer 将将捆绑包安装到您的项目的 vendor/nitra 目录中。

步骤 2: 启用组件

在内核中启用组件

<?php
// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new Knp\Bundle\MenuBundle\KnpMenuBundle(),
        new WhiteOctober\PagerfantaBundle\WhiteOctoberPagerfantaBundle(),
        new Admingenerator\GeneratorBundle\AdmingeneratorGeneratorBundle(),
        new Millwright\MenuBundle\MillwrightMenuBundle(),
	new Millwright\ConfigurationBundle\MillwrightConfigurationBundle(),
        new Genemu\Bundle\FormBundle\GenemuFormBundle(),
        new Pinano\Select2Bundle\PinanoSelect2Bundle(),
	new FOS\UserBundle\FOSUserBundle(),
    );
}

步骤 3: 配置

根据您使用的数据存储类型,将以下配置添加到您的 config.yml 文件中。

# app/config/config.yml
imports:
    - { resource: menu.yml }
    - { resource: ../../vendor/nitra/doctrine-behaviors/config/orm-services.yml }


# Assetic Configuration
assetic:
    debug:          %kernel.debug%
    use_controller: false
    bundles:        [ AdmingeneratorGeneratorBundle ]
    #java: /usr/bin/java
    filters:
        cssrewrite: ~
        lessphp: ~

# Doctrine Configuration
doctrine:
    orm:
        filters:
            softdeleteable:
                class: Admingenerator\GeneratorBundle\Filter\SoftDeleteableFilter
                enabled: true
        hydrators:
            KeyPair: Admingenerator\GeneratorBundle\Hydrators\KeyPairHydrator      
            
# FOS Configuration
fos_user:
    db_driver: orm # other valid values are 'mongodb'
    firewall_name: main
    user_class: Nitra\NitraThemeBundle\Entity\User
	
# Admingenerator Configuration
admingenerator_generator:
    base_admin_template: ::base_admin.html.twig
    use_doctrine_orm: true
    stylesheets: []
    logout_path: fos_user_security_logout
    twig:
        use_localized_date: true
        use_form_resources: true
        date_format: 'Y-M-d'
        localized_date_format: 'medium'
        localized_datetime_format: 'medium'
        datetime_format: 'Y-m-d H:i'  
        number_format:
            decimal: 2
            decimal_point: ','
            thousand_separator: ' '
    colors:
        link:       '#128bbd'
        border:     '#c3c3c3'
        main:       '#008abd'
        dark_main:  '#005b7d'
        light_main: '#cbe6f2'
        gray:       '#bfbfbf'
        hover:      '#0f769f'
            
# Замена combobox на Select2             
genemu_form:
    select2:
        enabled: true
        
# Add blameable listener
parameters:
    knp.doctrine_behaviors.blameable_listener.user_entity: Nitra\NitraThemeBundle\Entity\User