balrok / yii2-enhanced-gii
Generate Relational (hasMany, hasOne, belongsTo, & nested) Models & CRUD.
Installs: 11
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 98
Type:yii2-extension
This package is not auto-updated.
Last update: 2024-11-10 06:08:23 UTC
README
Improvements over the original:
- split out the runtime-dependencies in a separate package (balrok/yii2-enhanced-gii-dependencies)
- show [deleted,updated,created]_[at,by] in detailview
- print a custom label and link for related records if the model implements the
getLinkLabel() : string
method
Yii2 Gii (generator) with Relation
Support
https://www.paypal.me/yohanesc
Endorse me on LinkedIn
https://www.linkedin.com/in/yohanes-candrajaya-b68394102/
Installation
The preferred way to install this extension is through composer.
Either run
$ composer require mootensai/yii2-enhanced-gii:dev-master $ composer require kartik-v/yii2-mpdf:dev-master # if you want to use pdf exporter $ composer require kartik-v/yii2-tree-manager:dev-master # if you want to use tree/nested relation table
or add
"mootensai/yii2-enhanced-gii": "dev-master",
"kartik-v/yii2-mpdf": "dev-master",
"kartik-v/yii2-tree-manager": "dev-master"
add
"kartik-v/yii2-mpdf": "dev-master",
if you want to use pdf exporter
add
"kartik-v/yii2-tree-manager": "dev-master",
if you want to use tree/nested relation table
to the require
section of your composer.json
file.
I separate the mpdf & tree-manager because the package is big & not everyone will use it.
Then you must add this code at your config\main.php.
'modules' => [ ... //your another module 'gridview' => [ 'class' => '\kartik\grid\Module', // see settings on http://demos.krajee.com/grid#module ], 'datecontrol' => [ 'class' => '\kartik\datecontrol\Module', // see settings on http://demos.krajee.com/datecontrol#module ], // If you use tree table 'treemanager' => [ 'class' => '\kartik\tree\Module', // see settings on http://demos.krajee.com/tree-manager#module ] ... // your another module ],
See gridview settings on http://demos.krajee.com/grid#module
See datecontrol settings on http://demos.krajee.com/datecontrol#module
See treemanager settings on http://demos.krajee.com/tree-manager#module (If you use tree/nested relation table)
Usage :
Go to your gii tools, and notice the new IO Generator for models & CRUD
Features
Model :
- Generate optimistic lock
- Generate Timestamp Behaviors
- Generate Blameable Behavior
- Generate UUID Behavior
- Generate Soft Delete Behavior (NEW! Todo : Generate data filtering for relation data, e.g. not show deleted children of hasMany )
CRUD :
- Generate all CRUD with wildcard (*) of table
- Generate related input output
- Specify your name/label attribute for foreign keys
- Set your column to hidden
- Specify your skipped columns
- Specify your skipped relations
- Set pluralize or not
- PDF Printable view
- Expandable / collapsible row at index grid view for related data
Migration Generator :
- Generate migration from your database structure (based on : https://github.com/deesoft/yii2-gii)
- Option to generate with
safeUp()
andsafeDown()
To Do
- One-page-CRUD template
- Implement generator for Soft Delete Behavior (https://github.com/yii2tech/ar-softdelete)
I'm open for any improvement
Screenshot
Model Generator
CRUD Generator
Index
Grid View
List View
View
Form
Nested / Tree
Migration Generator
Thanks To
- Jiwanndaru (jiwanndaru@gmail.com) for creating the tradition
- kartik-v (https://github.com/kartik-v) for most of widgets
- schmunk42 (https://github.com/schmunk42) for bootstrap & model base & extension
- mdmunir (https://github.com/mdmunir) for JsBlock & Migration Generator (from https://github.com/deesoft/yii2-gii)