jlorente/laravel-data-migrations

An extension to allow you to separate data migrations from structure migrations
229,139 34
Install
composer require jlorente/laravel-data-migrations
Latest Version:2.0.2
PHP:>=7.4.0
License:MIT
Last Updated:Jan 31, 2025
Links: GitHub  ·  Packagist
Maintainer: jlorente

Data Migrations for Laravel

This extension allows you to separate data migrations from structure migrations.

Installation

The preferred way to install this extension is through composer.

With Composer installed, you can then install the extension using the following commands:

NOTE: Until laravel 7.x use version 1.x. From laravel 8.0 and later use 2.x

$ php composer.phar require jlorente/laravel-data-migrations

or add

...
    "require": {
        "jlorente/laravel-data-migrations": "*"
    }

to the require section of your composer.json file.

Configuration

  1. Register the ServiceProvider in your config/app.php service provider list. This step can be skipped in Laravel 5.5+

config/app.php

return [
    //other stuff
    'providers' => [
        //other stuff
        \Jlorente\DataMigrations\DataMigrationsServiceProvider::class,
    ];
];
  1. Publish the new assets.
php artisan vendor:publish --tag=data-migrations

This will create the default migrations directory and the config/data-migrations.php file.

Usage

By default, the table used to store the data migrations is "migrations_data" table. You can change the table on the config/data-migrations.php file.

The data migrations will be stored in the migrations_data folder of the database path if no path is specified in the command execution.

The available commands of the package are:

Create migration command

php artisan make:data-migration [name] [--path=]

The firts time you use it the data migrations table will be created.

Run migration command

php artisan migrate-data [--path=]

Rollback migration command

php artisan migrate-data:rollback [--path=]

The behavior of the migrations is the same as the regular migrations.

License

Copyright © 2018 José Lorente Martín jose.lorente.martin@gmail.com.

Licensed under the MIT license. See LICENSE.txt for details.

Related Packages

doctrine/dbal

Powerful PHP database abstraction layer (DBAL) with many features for database s...

637,827,751 9,703
laravel/framework

The Laravel Framework.

589,172,971 34,950
laravel/tinker

Powerful REPL for the Laravel framework.

498,216,183 7,442
laravel/serializable-closure

Laravel Serializable Closure provides an easy and secure way to serialize closur...

413,412,504 609
nunomaduro/collision

Cli error handling for console/command-line PHP applications.

394,964,158 4,660

Version History

Version Released PHP Laravel License
2.0.2 >=7.4.0 >=8.0 MIT
2.0.1 >=7.4.0 >=8.0 MIT
2.0.0 >=7.4.0 ^8.0 MIT
1.1.5 >=7.0.0 ^5.5 || ^6.0 || ^7.0 MIT
1.1.4 >=7.0.0 >=5.5 MIT