Heroku 如何用工厂生产假数据?

如题,heroku 上没数据,一条条加费劲,执行 heroku run php artisan migrate:refresh --seed 又报错,说 Class 'Faker\Factory' not found,咋整?

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
JasonG
最佳答案

因为生产环境加载的是 require 里的包,而 faker 包是加载在测试环境中的,如果要在生产环境中使用 faker 的话,可以把 "fzaninotto/faker": "~1.4" 写到 require 里,然后更新 push 到 heroku 中。

file

6年前 评论
讨论数量: 8
JasonG

因为生产环境加载的是 require 里的包,而 faker 包是加载在测试环境中的,如果要在生产环境中使用 faker 的话,可以把 "fzaninotto/faker": "~1.4" 写到 require 里,然后更新 push 到 heroku 中。

file

6年前 评论

再 composer.json 文件里把 "fzaninotto/faker": "~1.4" 写到 require 和 require-dev 里,然后 composer update 再 push 上生产环境

6年前 评论
NEET 4年前
JasonG

因为生产环境加载的是 require 里的包,而 faker 包是加载在测试环境中的,如果要在生产环境中使用 faker 的话,可以把 "fzaninotto/faker": "~1.4" 写到 require 里,然后更新 push 到 heroku 中。

file

6年前 评论
mfsslgs

@JasonG 试了您的方法,还是不行,谢谢了

6年前 评论

楼主解决了吗,我现在也遇到这个问题了,composer.josn 中有写 "fzaninotto/faker": "~1.4" 也不行

6年前 评论
mfsslgs

@Goodbye 没有,我怀疑有可能是 Git push 的时候有些文件没传上去,你可以检查一下你 gitmore 的文件,不过我没测试过 :blush:

6年前 评论

再 composer.json 文件里把 "fzaninotto/faker": "~1.4" 写到 require 和 require-dev 里,然后 composer update 再 push 上生产环境

6年前 评论
NEET 4年前
Master-Xue

https://www.cnblogs.com/cyclzdblog/p/74202... 发个链接,可以稍微了解下 require require_dev

6年前 评论

按照 @JasonG 的方法修改完 composer.jason 文件之后,不要忘记执行 composer dump-autoload,这样才可以让修改生效。
步骤:
1、heroku run bash(进入 heroku 命令行)
2、composer install(重新生成 composer.lock 文件,应该还有更好的方法达到这个目的)
3、php artisan db:seed(注入数据)

纯新手,如有不对欢迎指点

2年前 评论