talandis/lara-migrations

此包已被废弃且不再维护。没有建议的替代包。

用于外部 Laravel 的 Laravel 迁移

0.0.6 2016-07-01 11:20 UTC

This package is auto-updated.

Last update: 2024-05-29 03:27:32 UTC


README

这不是官方的 Laravel 包。我在希望在其他非 Laravel 项目的任何项目中使用 Laravel 迁移时构建了这个包。

安装

  1. 使用 composer 需要此包
composer require talandis/lara-migrations
  1. 在您项目的根目录下创建 migrations 文件夹

配置

  1. 在更新 composer 后,在您的项目根目录中创建一个可执行文件,该文件运行迁移器。示例文件 artisan 已包含在此存储库中。
  2. 创建名为 migrations 的文件夹。所有迁移文件都将存储在此。您可以在 artisan 文件中更改此文件夹的路径。
  3. 设置数据库配置

数据库配置

为了使迁移工作,您必须设置数据库凭据。为此,您应该使用第一个参数 'db-config' 和第二个参数返回一个包含配置的数组调用 registerContainerItem

数据库配置示例数组

[
    'driver' => 'mysql',
    'host' => 'localhost',
    'database' => 'sample_db',
    'username' => 'root',
    'password' => 'super_secret_pass',
    'charset' => 'utf8',
    'prefix' => '',
    'collation' => 'utf8_general_ci',
    'schema' => 'public'
]

用法

只有两个命令看起来与 Laravel 完全相同

创建新的迁移

php artisan make:migration my_new_migration_name

执行迁移

php artisan migrate

使用自定义数据库的迁移

php artisan migrate --database=development

环境支持

对于 migrate 命令,有一个可选参数 --database=...。当使用此参数时,您可能想修改 db-config 项目以反映该变量。

示例

在单独的配置文件中的环境示例。以下示例假设您的配置文件定义了 4 个常量。

$migrator->registerContainerItem( 'db-config', function ($c) {

    require_once( $c['config-path'] . $c['environment'] . '.php');

    return [
        'driver' => 'mysql',
        'host' => DB_HOST,
        'database' =>  DB_NAME,
        'username' => DB_USERNAME,
        'password' => DB_PASSWORD,
        'charset' => 'utf8',
        'prefix' => '',
        'collation' => 'utf8_general_ci',
        'schema' => 'public'
    ];
} );