After a quite accidental start with the Framework I’m enjoying a lot developing stuff with their Form component.
Using bootstrap and almost without any front-end javascript one can build great Admin-dashboard forms, using only a :
{{ form_start(form) }}
{{ form_end(form) }}
Where you want the form to be rendered in the twig template.
As one of my jobs is building friendly Admin Panels, I started to realize that apart of some custom tailored-made solutions, frecuently there is a ground base that works for almost any CMS or CRUD (CReate, Update , Delete manager)
So instead of googling and fetching them one by one, you can find them, or comment them in this post:
- TinymceBundle
Great one. After installing it, you have a ready made
{{ tinymce_init() }}
to put at the end of your twig template. All what you need to do is adjust the config and add a “tinymce” class in your FormTypes.
Alone with that you can build a CMS in some minutes.
How cool is that ? - KnpPaginatorBundle
Whenever we list stuff and becomes large, we need to paginate. This one comes really handy. And like almost all the KNP bundles, is a really nice piece of code, and developer friendly. - Bootstrap-bundle
Bootstrap is the state of the art front-end to deploy Admin Dashboards. I had a little fight before making this one work in my Linux dev machine, but is just because I’m not a very front-end guy at the moment, and didn’t had this CSS tools to compile things. Actually you don’t need this if you want bootstrap base, but I though that having it in a Bundle and thus, being able to install it by composer was a cool thing. And it is!
And that’s basically the 3 things I mostly use all the time.
There are hundreds more, but the basic, ground structur is there. Making a login / password with FOS User Bundle is also very easy.
In the beginning, the first 2 months or so I was looking towards something that creates an Automatic CRUD manager from a mysql table. After learning more Symfony, I realized that you don’t really need something like that, when it’s quite easy to create your Entities from an existing mysql DB and after that make some Form types and base templates. Cannot get more simplified!
Of course will take some effort, but at the end, you have a custom tailored panel with validation at the top where you can add the customization on top to make your Dashboard more usable.
Hopefully you will make your client happier as well.
Composer lines to add this:
require: { ... "stfalcon/tinymce-bundle": "dev-master", "knplabs/knp-paginator-bundle": "dev-master", "braincrafted/bootstrap-bundle": "~2.0", "twbs/bootstrap": "3.0.*", "jquery/jquery": "2.1.3" }