talandis / lara-migrations
此包已被废弃且不再维护。没有建议的替代包。
用于外部 Laravel 的 Laravel 迁移
0.0.6
2016-07-01 11:20 UTC
Requires
- php: >=5.4.0
- illuminate/console: ^5.2
- illuminate/database: ^5.2
- illuminate/filesystem: ^5.2
- mockery/mockery: ^0.9.5
- pimple/pimple: ^3.0
- symfony/process: ^3.1
README
这不是官方的 Laravel 包。我在希望在其他非 Laravel 项目的任何项目中使用 Laravel 迁移时构建了这个包。
安装
- 使用 composer 需要此包
composer require talandis/lara-migrations
- 在您项目的根目录下创建
migrations文件夹
配置
- 在更新 composer 后,在您的项目根目录中创建一个可执行文件,该文件运行迁移器。示例文件
artisan已包含在此存储库中。 - 创建名为
migrations的文件夹。所有迁移文件都将存储在此。您可以在artisan文件中更改此文件夹的路径。 - 设置数据库配置
数据库配置
为了使迁移工作,您必须设置数据库凭据。为此,您应该使用第一个参数 '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' ]; } );