dev-master
9999999-devPackage to generate automatic cruds for Laravel BoilerPlate Apps
MIT
The Requires
The Development Requires
by Maru Amallo
laravel boilerplate package
                         Wallogit.com
                    
                    2017 © Pedro Peláez
                    
                    
                    
                    
                
                
            
Package to generate automatic cruds for Laravel BoilerPlate Apps
Package to generate automatic cruds for Laravel BoilerPlate Apps [Laravel 5 Boilerplate], (*1)
The amamarul:crud make:
    1 - Model
        2 - Model Trait Attribute
        3 - Model Trait Relationship
        4 - Model Trait Scope
    5 - Form Request
    6 - Controller
        7 - Datatable as Service for Controller
    8 - Routes
    9 - Breadcrumbs, (*2)
``` bash $ git clone https://github.com/rappasoft/laravel-5-boilerplate.git, (*3)
``` bash $ cd laravel-5-boilerplate
``` bash $ composer install, (*4)
## Duplicate .env.example and rename to .env ``` bash $ php artisan key:generate
``` bash $ composer require amamarul/boiler-plate-commands, (*5)
### Require Datatables Package ``` bash $ composer require yajra/laravel-datatables-buttons:^1.1
Service Provider ``` php Yajra\Datatables\ButtonsServiceProvider::class, (*6)
Configuration and Assets ``` bash $ php artisan vendor:publish --tag=datatables-buttons
``` php /* * Load third party local providers */ $this->app->register(\Amamarul\BoilerPlateCommands\Providers\BoilerPlateCommandsServiceProvider::class);, (*7)
## The register function should look like this ``` php public function register() { /* * Sets third party service providers that are only needed on local/testing environments */ if ($this->app->environment() == 'local' || $this->app->environment() == 'testing') { /** * Loader for registering facades. */ $loader = \Illuminate\Foundation\AliasLoader::getInstance(); /* * Load third party local providers */ $this->app->register(\Barryvdh\Debugbar\ServiceProvider::class); /* * Load third party local aliases */ $loader->alias('Debugbar', \Barryvdh\Debugbar\Facade::class); /* * Load third party local providers */ $this->app->register(\Amamarul\BoilerPlateCommands\Providers\BoilerPlateCommandsServiceProvider::class); } }
``` bash $ php artisan vendor:publish --provider='Amamarul\BoilerPlateCommands\Providers\BoilerPlateCommandsServiceProvider', (*8)
# Usage You need the tables migrated ## create migration ``` bash $ php artisan make:migration create_products_table
``` php <?php, (*9)
use Illuminate\Support\Facades\Schema; use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration;, (*10)
class CreateProductsTable extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('products', function (Blueprint $table) { $table->increments('id'); $table->string('name'); $table->timestamps(); }); }, (*11)
/**
 * Reverse the migrations.
 *
 * @return void
 */
public function down()
{
    Schema::dropIfExists('products');
}
}, (*12)
## Migrate ``` bash $ php artisan migrate
Run the following commands
amamarul:crud {name} {tabla} {seccion} {grupo?}
    * name: Is the Model Name
    * tabla: Is the table name
    * seccion: can be 'Backend', 'Frontend' or the section you want
    * grupo: if you want to group different Models and Controllers like sub sections. this is optional, (*13)
This is an example for Backend and the group 'Products'. Then you can to add another model/controller in that group ``` bash $ php artisan amamarul:crud Product products Backend Products, (*14)
- **The result in console will be** ``` bash Model created successfully. Request created successfully. TraitAttribute created successfully. TraitRelationship created successfully. TraitScope created successfully. Controller created successfully. DataTable created successfully. Routes created successfully. Breadcrumbs created successfully.
bash
$ php artisan serve
Now you can go to http://localhost:8000/admin/products/product and you will show the datatable.Go to app/Http/Controllers/Backend/Products/DataTables/ProductDataTable.php and uncomment the fields you want to show in the datatable in the getColumns() function (the last function), by default you will see only 'id', 'created_at' and 'updated_at'., (*15)
Contributions are welcome and will be fully credited., (*16)
I accept contributions via Pull Requests, (*17)
The MIT License (MIT). Please see License File for more information., (*18)
Package to generate automatic cruds for Laravel BoilerPlate Apps
MIT
laravel boilerplate package