marlek/laravel-automigrate

Laravel 包,允许从不同文件夹自动运行迁移,当你有自定义文件夹结构时非常有用

2.0 2016-02-02 08:54 UTC

This package is not auto-updated.

Last update: 2024-09-28 15:56:47 UTC


README

Build Status

Laravel 包,允许从不同文件夹自动运行迁移,当你有自定义文件夹结构时非常有用

NOTE: This package is not necessary with Laravel/Lumen version 5.3 and above, as it supports custom directories for migrations. 
Look up loadMigrationsFrom() function in the documentation.

安装

使用 composer 安装此包

composer require marlek/laravel-automigrate

安装完成后,打开你的 app/config/app.php 文件,并将此项目添加到 providers 数组中

'Marlek\LaravelAutomigrate\LaravelAutomigrateServiceProvider'

最后,你可以在应用根目录下运行 artisan 命令,并在 artisan 命令列表中看到 automigrate

php artisan

在 Laravel 中使用

你需要在包的配置中定义你想要运行的迁移列表。为此,你首先需要发布配置

php artisan vendor:publish

然后,你需要打开 app/config/laravel-automigrate.php 文件,并传递类似于这样的 paths 数组

<?php
    return [
        'paths' => [
            'path/to/migrations_folder_one',
            'path/to/migrations_folder_two'
        ]
    ];

最后,剩下要做的就是运行迁移数据库的命令

php artisan automigrate

在 Lumen 中使用

由于 Lumen 没有使用 vendor:publish 命令,你需要自己添加包配置。

我建议将其添加到 bootstrap/app.php 中,如下所示

config(
    [
        'laravel-automigrate.paths' => [
            'path/to/migrations_folder_one',
            'path/to/migrations_folder_two'
        ]
    ]
);

之后,就像在 Laravel 中一样,你需要运行命令来迁移你的数据库

php artisan automigrate

重置之前的迁移

如果你想重新运行迁移之前重置之前的迁移,只需传递 reset 选项

php artisan automigrate --reset

填充数据库

migrate 命令一样,此命令接受 seed 选项,以防你在迁移后想要填充你的数据库

php artisan automigrate --seed

重置和填充可以组合成一个命令,该命令将重置你的迁移,重新运行所有迁移,然后填充数据库

php artisan automigrate --seed --reset

在所有包迁移之后运行常规 migrate 命令

Laravel 的旧版本

如果你使用的是 Laravel 4.*,你应该使用 1.2 版本的包

composer require marlek/laravel-automigrate:1.2