orchestra / transporter
Migration Toolkit: Creating ORM Compatible Structure from Legacy Database
v3.2.0
2015-11-24 14:08 UTC
Requires
- illuminate/support: ~5.2.0
Requires (Dev)
- mockery/mockery: 0.9.*
- orchestra/testbench: ~3.2.0
This package is auto-updated.
Last update: 2024-11-05 05:50:38 UTC
README
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();
Version Compatibility
Installation
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.
Quick Installation
You could also simplify the above code by using the following command:
composer require "orchestra/transporter=~3.1"
Setup
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