orchestra/transporter

迁移工具包:从旧数据库创建 ORM 兼容结构

v3.2.0 2015-11-24 14:08 UTC

This package is auto-updated.

Last update: 2024-09-05 05:33:23 UTC


README

Join the chat at https://gitter.im/orchestral/platform/components

你是否曾经接手过一个结构混乱、无序的数据库设计项目?你是否希望将这些项目转变为更 Eloquent 友好的形式?

Latest Stable Version Total Downloads MIT License Build Status Coverage Status Scrutinizer Quality Score

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();

版本兼容性

安装

要通过 composer 安装,只需在您的 composer.json 文件中添加以下内容

{
    "require": {
        "orchestra/transporter": "~3.1"
    }
}

然后运行 composer install 来获取软件包。

快速安装

您还可以使用以下命令简化上述代码

composer require "orchestra/transporter=~3.1"

设置

为了简化,Transporter 组件不包含任何服务提供者。您可以通过以下方式运行迁移

php artisan migrate --path=vendor/orchestra/transporter/resources/database/migrations