Migration Toolkit: Creating ORM Compatible Structure from Legacy Database
orchestra/transporter is a Laravel package for migration toolkit: creating orm compatible structure from legacy database.
It currently has 2 GitHub stars and 141 downloads on Packagist (latest version v3.2.0).
Install it with composer require orchestra/transporter.
Discover more Laravel packages by orchestra
or browse all Laravel packages to compare alternatives.
Last updated
Have you ever taken a project that had a messy, unstructured database design? Have you ever wish you can transform those project to become more Eloquent friendly?
use App\User;
use Illuminate\Database\Query\Builder;
use Orchestra\Transporter\Blueprint;
use Orchestra\Transporter\Schema;
Schema::table('member', function (Blueprint $blueprint) {
$blueprint->connection('legacy')
->key('member_id')
->filter(function (Builder $query) {
$query->where('active', '=', 1);
})->transport(function ($data) {
return new User([
'email' => $data->u_email,
'password' => $data->u_password,
]);
});
})->start();
Laravel | Transporter :--------|:--------- 5.1.x | 3.1.x 5.2.x | 3.2.x 5.3.x | 3.3.x@dev 5.4.x | 3.4.x@dev
To install through composer, simply put the following in your composer.json file:
{
"require": {
"orchestra/transporter": "~3.1"
}
}
And then run composer install to fetch the package.
You could also simplify the above code by using the following command:
composer require "orchestra/transporter=~3.1"
For simplicity, Transporter Component doesn't include any service provider. You can simply run the migration via:
php artisan migrate --path=vendor/orchestra/transporter/resources/database/migrations