lag/adminbundle

Generic admin bundle for Symfony2 from L'arrière-guichet


Keywords
admin, Symfony2, backoffice, generic, crud, pagination, symfony
License
MIT

Documentation

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

AdminBundle

The AdminBundle let you creates a flexible and robust backoffice on any Symfony application, with simple yaml configuration.

It eases the handling of CRUD views by configuring Admin objects on top of your Doctrine entities. Each Admin has one or many Action. By default, the four actions of a classical CRUD are available (create, edit, delete and list) and the creation of custom actions is easy.

If you require more flexibility, you can easily override any part of the process (data providers, controllers, views...). The purpose of the bundle is to provide an Admin interface with default configuration, and allows the user to add his specific need where he wants, and allow to implements any specific needs without any hassles.

Features

  • Dynamic CRUD for your entities (no code generation)
  • Simple yaml configuration
  • List with pagination, sorting and filters
  • Menus integrations
  • Fully customizable (use your own controllers, data providers or templates)
  • Bootstrap 4 integration (can be disabled or override)

Installation

Step 1: Install the Bundle

Open a command console, execute the following command in your project directory to install the latest stable version of the bundle:

$ composer require lag/adminbundle

If you does not use flex, read the extra steps to install the bundle here

Step 2: Configure the routing

Import the routing configuration to have the admin generated routes :

    # config/routes.yaml        
    lag_admin:
        resource: .
        type: extra

Step 4 : Configure an entity

    # config/packages/lag_admin.yaml

    lag_admin:
        application:
            title: My Little TaunTaun application
        admins:
            planet:
                entity: UniverseBundle\Entity\Planet
                form: UniverseBundle\Form\Type\PlanetType            

And now you could go to http://127.0.0.1:8000/admin/planet/list to see a list of your entities.

Yan can go to http://127.0.0.1:8000/app_dev.php/admin/ to see the homepage of your admin interface

Documentation

  1. How to use
    1. How To Use
    2. Admins
    3. Actions
    4. Fields
    5. Events
    6. Data Providers
    7. Filters
    8. Views
  2. Customization a. Custom actions b. Custom rendering c. Custom data
  3. Reference a. Application configuration b. Admin configuration
  4. FAQ
  5. Configuration reference

Road map

v1.1

  • Add dynamic id column (instead of required "id" column) to improve generic and handle multiple ids columns

v1.0

  • Add more testing

History

Version 0.4 :

  • Dynamic CRUD for your entities (no code generation)
  • Simple configuration in yml (look alike symfony1 generators.yml syntax)
  • List with pagination, sorting and batch remove (filters are coming)
  • Full translated
  • Main and left menu integration
  • Fully customizable (use your own controllers, data providers or templates)
  • Bootstrap 3 integration (can be disabled or override)