Laravel 5.6:从特定文件夹进行迁移
Laravel 5.6:从特定文件夹进行迁移
我尝试使用php artisan migrate --path=\"/database/migrations/ef
只使用该路径下的迁移。但是我得到了\"Nohting no migrate\"
的错误提示,而迁移文件确实在该路径下。\n我尝试将以下代码添加到AppServiceProvider的boot方法中,参考自这个链接:Laravel running migrations on \"app/database/migrations\" folder recursively:\n
$mainPath = database_path('migrations'); $directories = glob($mainPath . '/*' , GLOB_ONLYDIR); $paths = array_merge([$mainPath], $directories); $this->loadMigrationsFrom($paths);
\n但是它也没有起作用。
Laravel 5.6版本:从特定文件夹迁移
在使用Laravel进行数据库迁移时,有时候我们需要从特定的文件夹中进行迁移操作。下面将介绍出现这个问题的原因以及解决方法。
如果你需要迁移一个名为User的特定文件夹,可以使用以下命令:
php artisan migrate --path=/database/migrations/User
如果你需要迁移migrations文件夹中的所有文件夹,可以使用以下命令:
php artisan migrate --path=/database/migrations/*
这就是解决这个问题的方法。通过指定需要迁移的文件夹路径,我们可以实现对特定文件夹的迁移操作。
在Laravel 5.0及以上版本中,迁移特定文件夹中的迁移文件的正确命令应该是:
php artisan migrate --path=/database/migrations/ef php artisan migrate --path=/database/migrations/relations
这在较旧的Laravel版本中是有效的。我相信在5版本之前,之前编辑的答案就是/app/database/migrations,因为在5版本之前,路径是这样的。
只需稍作修改,删除app,因为他们更改了数据库的路径。
我使用了php artisan migrate --path=/database/migrations/ef
,但是我收到了相同的消息。
检查一下他的php artisan migrate --path="/database/migrations/ef
,双引号。
那么你应该在答案中添加一个注释来强调这个更改。
祝你好运,兄弟,但人们会因为它没有回答OP的问题而给你点踩的。(这句话表示回答并不符合问题要求,可能会被其他用户给负面评价。)