Laravel Migrate Fresh 命令
发布日期:作者: Eric L. Barnes
您可能熟悉 `migrate:refresh` 命令,该命令允许您回滚并重新运行所有迁移。 这在您需要在开发过程中重建数据库时很有用。
即将推出的 Laravel 5.5 对此进行了改进,推出了一个名为 `migrate:fresh` 的新命令。 “refresh” 和 “fresh” 之间的区别在于,新的 fresh 命令跳过所有 down 方法或回滚,而是直接删除表格,然后运行 `up` 方法。
以下是显示差异的命令输出
$ php artisan migrate:refresh Rolling back: 2014_10_12_100000_create_password_resets_tableRolled back: 2014_10_12_100000_create_password_resets_tableRolling back: 2014_10_12_000000_create_users_tableRolled back: 2014_10_12_000000_create_users_tableMigrating: 2014_10_12_000000_create_users_tableMigrated: 2014_10_12_000000_create_users_tableMigrating: 2014_10_12_100000_create_password_resets_tableMigrated: 2014_10_12_100000_create_password_resets_table
现在,使用新的 fresh 命令
$ php artisan migrate:fresh Dropped all tables successfully.Migration table created successfully.Migrating: 2014_10_12_000000_create_users_tableMigrated: 2014_10_12_000000_create_users_tableMigrating: 2014_10_12_100000_create_password_resets_tableMigrated: 2014_10_12_100000_create_password_resets_table
这个新命令的另一个好处是它与最近的 5.4.17 版本 配合得很好,因为该版本使迁移中的 `up` 和 `down` 方法可选。 现在您可以省略 down 方法,并仍然快速重置本地数据库。
新的 `migrate:fresh` 将包含在计划于今年 7 月或 8 月发布的 Laravel 5.5 中。 要了解更多关于此新功能的信息,您也可以查看 Taylor 的公告 帖子。
更新: 如果你想在当前的 Laravel 应用中使用它,请查看 Spatie 提供的这个 包。