Ad

Laravel Migrations Do Not Reflect The Current Database Schema

I'm working with an app in Laravel / MySQL that does not have all its tables defined through the migrations, because at one point they stopped using the migrations and made changes directly by touching the database. This makes that if I run a php artisan migrate do not take the current DB schema. My question is, do I have any way to reuse migrations from the current structure of the DB? If there is any procedure that updates me the migrations including those fields that were added directly in the table in the database.

Ad

Answer

Quick search brings me to a package, cethron/migrations-generator (last update Sep 19, 2017). It generates migrations from existing databases. Here is another article about some tools.

However you can still make new migrations. These migrations would either create new tables or alter the columns.

You should manually track down the difference and modify the columns.

Schema::table('users', function (Blueprint $table) {
    $table->string('name', 50)->change();
});
Ad
source: stackoverflow.com
Ad