You can pull in the package via composer:
composer require nachofassini/laravel-database-structure
For laravel < 5.6: the service provider must be registered:
// config/app.php
'providers' => [
...
NachoFassini\LaravelDatabaseStructure\ServiceProvider::class,
];
To generate schema file just type in the console:
php artisan schema:file
The file should be generated at your database path like schema.php
and would look like these:
$tables => [
'users' => [
'id',
'name',
'email',
'created_at',
...
],
'posts' => [
'user_id',
'title',
...
]
];
There are no conventions about this, but I think this file should be ignored.
If you want the file to be updated every time you change the database through any migrate command, just set AUTOMATIC_SCHEMA_FILE=true
in your .env file.
This will make that after executing any kind of migration command, the schema file gets up to date with the final database structure.
I think this can be much more useful, any collaboration is appreciated.
The MIT License (MIT). Please see License File for more information.