summerblue/generator

Extend Laravel's generators scaffold.

9.0.2 2022-03-06 08:13 UTC

README

Travis Packagist Tag

Laravel Scaffold Generator, for Laravel 5.3.

Install

Step 1: Install Through Composer

9.x:

composer require "summerblue/generator:9.*" --dev

8.x:

composer require "summerblue/generator:8.*" --dev

7.x:

composer require "summerblue/generator:7.*" --dev

6.x:

composer require "summerblue/generator:6.*" --dev

5.1 ~ 5.5:

composer require "summerblue/generator:~0.5" --dev

= 5.6 (Bootstrap4):

composer require "summerblue/generator:~1.0" --dev

Step 2: Add the Service Provider

Open /app/Providers/AppServiceProvider.php and, to your register function, add:

public function register()
{
     if (app()->environment() == 'local' || app()->environment() == 'testing') {

        $this->app->register(\Summerblue\Generator\GeneratorsServiceProvider::class);

    }
}

Step 3: Run Artisan!

You're all set. Run php artisan from the console, and you'll see the new commands make:scaffold.

Examples

Use this command to generator scaffolding of Project in your project:

php artisan make:scaffold Projects --schema="name:string:index,description:text:nullable,subscriber_count:integer:unsigned:default(0)"

This command will generate:

$ php artisan make:scaffold Projects --schema="name:string:index,description:text:nullable,subscriber_count:integer:unsigned:default(0)"


----------- scaffolding: Project -----------

+ ./database/migrations/2017_04_17_065656_create_projects_table.php
+ ./database/factories/ModelFactory.php
+ ./database/seeders/ProjectsTableSeeder.php
+ ./database/seeders/DatabaseSeeder.php (Updated)
x ./app/Models/Model.php (Skipped)
+ ./app/Models/Project.php
+ ./app/Http/Controllers/ProjectsController.php
x ./app/Http/Requests/Request.php (Skipped)
+ ./app/Http/Requests/ProjectRequest.php
+ ./app/Observers/ProjectObserver.php
+ ./app/Providers/AppServiceProvider.php (Updated)
x ./app/Policies/Policy.php
+ ./app/Policies/ProjectPolicy.php
+ ./app/Providers/AuthServiceProvider.php (Updated)
+ ./routes/web.php (Updated)

--- Views ---
   + create_and_edit.blade.php
   + index.blade.php
   + show.blade.php
x ./resources/views/error.blade.php
Migrated: 2017_04_17_065656_create_projects_table

----------- -------------------- -----------
-----------   >DUMP AUTOLOAD<    -----------

Explain

Generate the following:

  • Migration
  • Seed, add ModelFactory entry, and DatabaseSeeder entry
  • Base Model class, Model and helper trait
  • Resource Controller
  • Base FormRequest class and StoreRequest, UpdateRequest
  • Policy and Policy base class, auto register AuthServiceProvider class
  • Update routes file to register resource route
  • Add error page view
  • Create and Edit action share the same view

Future Plan

  • API
  • Admin
  • Auto fill FormRequest rule
  • Auto fill ModelFactory filed

Screenshot

file

Thanks to