Laravel 5.4 migrate:generate 失败并出现 Way\Generators\Filesystem\FileNotFound 错误

Laravel 5.4 migrate:generate fails with Way\Generators\Filesystem\FileNotFound error

我正在尝试使用 Xethron/migrations-generator in a Laravel 5.4 project in order to generate migration files for all of the tables in my database. I followed the instructions in the README 文件 Laravel 5 来信。在解决了一两个投诉后(必须安装 php7.0-xml 扩展),我尝试 运行 它但它吐出这样的错误:

$ php artisan migrate:generate
Using connection: mysql

Generating migrations for: group_product_assoc, groups, product_hierarchy_assoc, product_product_assoc, products, replist, sessionsOLD, stores, tree, users, zipcode_coordinates

 Do you want to log these migrations in the migrations table? [Y/n] :
 > n

Setting up Tables and Index Migrations


  [Way\Generators\Filesystem\FileNotFound]                                               
  /var/www/my-project/vendor/way/generators/src/Way/Generators/templates/migration.txt  

我已经 issue 在 github 上向 Xethron 报告了这个问题,显然我不是唯一遇到这个问题的人。

谁能告诉我如何让它工作?我对 Laravel 或 Composer 不是特别流利,所以请不要忽略基本解释。我正在使用:

我遇到了同样的问题。您需要将以下文件复制到该位置:

https://github.com/Xethron/Laravel-4-Generators/tree/master/src/Way/Generators/templates/migration.txt

进入此文件夹(有可能,这不存在 - 因此您可以在供应商 Xethron

中创建文件夹或更改配置文件 (config.php)

/var/www/my-project/vendor/way/generators/src/Way/Generators/templates/

J。据我所知,Doe 的回答基本上是正确的。我在这里发布了一个更完整的解决方案来描述我为解决问题所采取的具体步骤。

显然,Xethron 代码有问题,因为它试图引用一个 PHP 模板文件,而 Xethron 包在某种程度上不正确 included/required。我的短期解决方案似乎奏效了。该解决方案是先 cd 进入工作目录:

cd /var/www/my-project

然后创建文件所在的目录:

mkdir -p vendor/way/generators/src/Way/Generators/templates

然后我们以两种方式之一将模板文件放在那里。一种方法,如 J. Doe 所建议的那样,是从 github (https://raw.githubusercontent.com/Xethron/Laravel-4-Generators/master/src/Way/Generators/templates/migration.txt) 下载文件并将其另存为 migration.txt 在我们的目录中刚刚在上面创建。或者您可以 cd 进入工作目录并执行此命令:

curl https://raw.githubusercontent.com/Xethron/Laravel-4-Generators/master/src/Way/Generators/templates/migration.txt > vendor/way/generators/src/Way/Generators/templates/migration.txt

另一种方法是复制模板文件,该文件显然位于 xethron 包的子目录中:

cp vendor/xethron/laravel-4-generators/src/Way/Generators/templates/migration.txt vendor/way/generators/src/Way/Generators/templates/migration.txt

一旦文件存在于该位置,您应该能够运行再次顺利执行命令:

php artisan migrate:generate

此问题已解决,只需运行composer update获取最新版本

对于给您带来的不便,我们深表歉意。