在开发的过程中,当我们需要重建数据库数据的时候,在之前的laravel版本里,我们知道可以使用php artisan migrate:refresh命令,它的实现原理是根据你每个migration文件里定义的down()方法来回撤数据表,然后呢再相应地重新migrate,如图所示:

但是这个命令有时候会遇到问题,比如说当涉及到外键约束(foreign key constraints),或者说你某个migration文件的down()方法没写好,以往报错了,我们只能手动去清空数据库什么的,可能因此还需要借助一些图形工具。

为了解决这个问题呢,5.5新增了migrate:fresh这个命令,它的原理是跳过你之前migration文件里的down()方法,直接给你drop table,然后再给你migrate,像这样: