php artisan 迁移所有表,少数除外
php artisan migrate all tables except few
是否可以执行php artisan migrate
迁移所有表但只在database\migrations
下留下几个迁移文件的方式?
场景是,我们的业务需求需要 2 个数据库。所以很少有迁移文件明确提到第二个数据库。当我为 PHPUnit 创建另一个数据库时,我不需要 运行 与第二个数据库关联的迁移文件。
迁移表的想法是进步的。
php artisan migrate
将迁移 migrations
文件夹中的所有文件。
您不能更改它的顺序或要求某些迁移不要 运行。
您可以根据需要创建任意数量的迁移文件,并使用它们来删除或添加列或表。
如果您需要一点技巧,可以在 migrations
中创建一个子文件夹,然后将所有不需要的迁移移到那里,然后 运行 php artisan migrate
。这将避免子文件夹和其中的所有迁移。
您可以将任何不需要的迁移 运行 自动放在子文件夹中。例如:
/database
/migrations
/db2
migration_3
migration_1
migration_2
现在当你 运行:
php artisan migrate
只有database/migrations
目录下的迁移才会运行(非递归,所以不会遍历db2
目录),意思是只有migration_1
和migration_2
将是 运行。
到 运行 单独迁移到 db2
目录中,您可以使用 --path
选项,如下所示:
php artisan migrate --path=/database/migrations/db2
是否可以执行php artisan migrate
迁移所有表但只在database\migrations
下留下几个迁移文件的方式?
场景是,我们的业务需求需要 2 个数据库。所以很少有迁移文件明确提到第二个数据库。当我为 PHPUnit 创建另一个数据库时,我不需要 运行 与第二个数据库关联的迁移文件。
迁移表的想法是进步的。
php artisan migrate
将迁移 migrations
文件夹中的所有文件。
您不能更改它的顺序或要求某些迁移不要 运行。
您可以根据需要创建任意数量的迁移文件,并使用它们来删除或添加列或表。
如果您需要一点技巧,可以在 migrations
中创建一个子文件夹,然后将所有不需要的迁移移到那里,然后 运行 php artisan migrate
。这将避免子文件夹和其中的所有迁移。
您可以将任何不需要的迁移 运行 自动放在子文件夹中。例如:
/database
/migrations
/db2
migration_3
migration_1
migration_2
现在当你 运行:
php artisan migrate
只有database/migrations
目录下的迁移才会运行(非递归,所以不会遍历db2
目录),意思是只有migration_1
和migration_2
将是 运行。
到 运行 单独迁移到 db2
目录中,您可以使用 --path
选项,如下所示:
php artisan migrate --path=/database/migrations/db2