airondev / laravel-seeder-generator
A Laravel package to generate seeders for each database table.
Requires
- php: ^7.4|^8.0
- illuminate/support: ^7.0|^8.0|^9.0|^10.0|^11.0
README
Laravel Seeder Generator is a package that automatically generates seeders for each table in your database. It simplifies the process of creating seeders, allowing you to focus on other important tasks in your Laravel application.
Installation
You can install the package via Composer:
composer require airondev/laravel-seeder-generator
Step 1: Register the Service Provider
If you are using Laravel 5.5 or later, the package will be auto-discovered. For earlier versions of Laravel, add the service provider to the providers
array in config/app.php
:
'providers' => [ // Other Service Providers Airondev\SeederGenerator\SeederGeneratorServiceProvider::class, ],
Step 2: Publish Configuration File (Optional)
You can publish the configuration file to customize the seeder path. Run the following command:
php artisan vendor:publish --tag=config
Usage
Configuration
By default, seeders are generated in the database/seeders directory. You can customize this path by modifying the seeder-generator.php configuration file in your Laravel application's config directory
// config/seeder-generator.php return [ 'path' => env('SEEDER_PATH', 'database/seeders'), ];
Generate Seeders
To generate seeders for each table in your database, run the following command:
php artisan make:seeders
This command will create a seeder file for each table in the database/seeders
directory.
Customize Stub File (Optional)
If you want to customize the seeder stub file, you can publish it to your application and make your changes:
php artisan vendor:publish --tag=stubs
The stub file will be published to the stubs
directory in the root of your application. You can edit it to fit your needs.
Example
After running the php artisan make:seeders
command, you will see seeder files generated in the database/seeders
directory:
<?php use Illuminate\Database\Seeder; use Illuminate\Support\Facades\DB; class UsersSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { DB::table('users')->insert([ // Your data here ]); } }
Contributing
Thank you for considering contributing to the Laravel Seeder Generator package! You can submit issues and pull requests to the GitHub repository.
License
This package is open-sourced software licensed under the MIT license.