pepijnolivier / Eloquent-Model-Generator

Auto-generates all Eloquent models from the database in a Laravel project.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Eloquent Model Generator

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

This Laravel package will generate models with their appropriate Eloquent relations based on an existing database schema.

For automatically generating database migrations for your schema, see kitloong/laravel-migrations-generator

Requirements

  • PHP 8.1+
  • Laravel 8+

Installation

You can install the package via composer:

composer require --dev pepijnolivier/eloquent-model-generator

You can publish the config file with:

php artisan vendor:publish --tag="eloquent-model-generator-config"

This is the contents of the published config file:

<?php

use Illuminate\Database\Eloquent\Model;

return [
    /*
    |--------------------------------------------------------------------------
    | Namespace
    |--------------------------------------------------------------------------
    |
    | The default namespace for generated models.
    |
    */
    'model_namespace' => 'App\Models\Generated',
    'trait_namespace' => 'App\Models\Generated\Relations',

    /*
    |--------------------------------------------------------------------------
    | Output Path
    |--------------------------------------------------------------------------
    |
    | Path where the models will be created.
    |
    */
    'model_path' => 'app/Models/Generated',
    'trait_path' => 'app/Models/Generated/Relations',

    /*
    |--------------------------------------------------------------------------
    | Extend Model
    |--------------------------------------------------------------------------
    |
    | Extend the base model.
    |
    */
    'extend' => Model::class,
];

Usage

php artisan generate:models

Testing

composer test

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please see SECURITY for details.

Credits

License

The MIT License (MIT). Please see License File for more information.

About

Auto-generates all Eloquent models from the database in a Laravel project.

License:MIT License


Languages

Language:PHP 100.0%