yepsua / generator-bundle
The RICH CRUD Generator for Symfony2
Installs: 370
Dependents: 1
Suggesters: 1
Security: 0
Stars: 4
Watchers: 2
Forks: 0
Open Issues: 0
Type:symfony-bundle
Requires
- yepsua/rad-bundle: 1.2.x-dev
- yepsua/smartwig-bundle: 1.2.x-dev
README
YepsuaGeneratorBundle by @oyepez003
The RICH CRUD Generator for Symfony2.
The generate:doctrine:richcrud generates a basic controller for a given entity located in a given bundle. This controller allows to perform the five basic operations on a model.
Listing all records with pager and filters,
Showing one given record identified by its primary key,
Creating a new record,
Editing an existing record,
Deleting an existing record.
By default the command is run in the interactive mode and asks questions to determine the entity name, the route prefix or whether or not to generate write actions:
php app/console generate:doctrine:richcrud
To deactivate the interactive mode, use the --no-interaction option but don't forget to pass all needed options:
php app/console generate:doctrine:richcrud --entity=AcmeBlogBundle:Post --format=annotation --with-write --no-interaction
Installation
Download and make sure you have the composer.phar latest version running the command:
$ php composer.phar self-update
Add the next dependency in the composer.json file
"require": { ... "yepsua/generator-bundle": "dev-master" ... },
v1.0.0 for sf2.2.x or Old versions
v1.3.0 for sf2.3.x or Higher
Info: Use always the Last Stable Release of Symfony2.
For install and up to date the bundle
$ php composer.phar update yepsua/generator-bundle
Configuration
1) Add the required Bundles to your application kernel
<?php // app/AppKernel.php public function registerBundles() { return array( ... new Yepsua\CommonsBundle\YepsuaCommonsBundle(), new Yepsua\RADBundle\YepsuaRADBundle(), new Yepsua\SmarTwigBundle\YepsuaSmarTwigBundle(), new Yepsua\GeneratorBundle\YepsuaGeneratorBundle(), ... ); }
2) Publishing assets
Run the symfony command
$ php app/console assets:install web
3) Run
The next command and follow the steps:
$ php app/console generate:doctrine:richcrud
4) Translation
Uncomment the translator in the configuration file ( config.yml ):
# app/config/config.yml # ... framework: # ... translator: { fallback: %locale% }
Set the locale in the configuration file ( parameters.yml ):
# app/config/parameters.yml parameters: # ... locale: en
Now, for each created module you need create a translation file for the managed entity.
If you run:
$ php app/console generate:doctrine:richcrud --entity:AcmeDemoBundle:Post
You must create the AcmeDemoBundle_Post.en.xliff file in Acme/DemoBundle/Resources/translations to translate the Module for the Post Entity
<?xml version="1.0"?> <xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2"> <file source-language="en" datatype="plaintext" original="file.ext"> <body> <trans-unit id="entity.label"> <source>entity.label</source> <target>Post</target> </trans-unit> <trans-unit id="list.view.title"> <source>list.view.title</source> <target>Post Module</target> </trans-unit> <trans-unit id="list.view.grid.title"> <source>list.view.grid.title</source> <target>Post List</target> </trans-unit> <trans-unit id="kanban.view.title"> <source>kanban.view.title</source> <target>Post Kanban</target> </trans-unit> <trans-unit id="PostFooAttribute"> <source>PostFooAttribute</source> <target>Post Foo Attribute</target> </trans-unit> <trans-unit id="PostBarAttribute"> <source>PostBarAttribute</source> <target>Post Bar Attribute</target> </trans-unit> </body> </file> </xliff>
Remember clear the cache.
New command options
The doctrine:generate:richcrud command has 3 new options (layout, multipart and with-kanban) please use the help for more information.
php app/console generate:doctrine:richcrud --help
Enjoy