Upgrade to Pro — share decks privately, control downloads, hide ads and more …

PHPUNCONF2014 Sonata Admin Bundle

PHPUNCONF2014 Sonata Admin Bundle

Avatar for Markus Poerschke

Markus Poerschke

September 21, 2014

More Decks by Markus Poerschke

Other Decks in Technology

Transcript

  1. Why and who should use it? • Your application contains

    a lot of CRUD functionality • Your application is a „backend“ application • You are using Symfony2 framework
  2. CRUD CREATE • create a form for the input data

    • validate the users input • save data to the database READ • receive data from the database • filter / search UPDATE • create a form for the input data • fill the form with the data from the database • validate the users input • save data to the database • batch actions DELETE • ask the user if he is sure what he is doing • remove entry from DB
  3. Compare different approaches DIY Admin Generator Admin Framework Write anything

    by hand Generate basic CRUD code Configure by writing code Changes are easily possible Generated code can easily be changed Admin views / controllers can be overwritten General changes on all tools are hard to do Same as in DIY Updates can be applied to multiple tools Sonata Admin Bundle is not a Generator but a framework!
  4. Sonata Admin Bundle • Metadata description of CRUD operations by

    writing PHP code • No code generation • Fully customizable by using Symfony2 framework
  5. Possible data sources • Abstracted data sources • Support multiple

    data sources • Doctrine2 ORM • Propel (early stage) • Doctrine PHPCR (early stage) • Doctrine MondoDB (early stage)
  6. Main Features • CRUD functionality • Access rights management with

    ACL • Sonata User Bundle for User/Group/Rights management • Integrated text search • Versioning with AuditBundle by Simple Things
  7. Other Sonata Bundles • Core • Notification • Formatter •

    Internationalization • Cache • Seo • Easyextends • Admin • Doctrine ORM Admin • Propel Admin • Doctrine PHPCR Admin • MongoDB Admin • E-Commerce • Classification • Page • Media • News • User • Block • Timeline