为什么创建Seeder后需要composer dump-aotuload才能找到?

其他如

make:models

生成的却不用,直接就能加载。

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
最佳答案

classmap 是通过“缓存”来实现自动加载的,内容变了当然要先更新“缓存”。可以考虑把 seeds 目录加入 psr-4,就可以不用 dump-aotuload 了。因为通过 classmap 的加载效率比较高,所以一般上线后都会执行一下 dump-aotuload ,把 psr-4 的类也生成 classmap

github.com/laravel/laravel/blob/8.... 最新版的是加入了,不知道你用的什么版本。

3个月前 评论
讨论数量: 6

不需要吧,你是怎么创建的,命令还是直接建的文件

3个月前 评论

猜测的话是文件名的大小写和类的命名空间类名不一致问题

3个月前 评论

没有自动加载吧?你把database目录放到composer.json文件的autoload里面试试

3个月前 评论

@lun1bz 有的

"classmap": [
            "database/seeds",
            "database/factories"
        ],
3个月前 评论

classmap 是通过“缓存”来实现自动加载的,内容变了当然要先更新“缓存”。可以考虑把 seeds 目录加入 psr-4,就可以不用 dump-aotuload 了。因为通过 classmap 的加载效率比较高,所以一般上线后都会执行一下 dump-aotuload ,把 psr-4 的类也生成 classmap

github.com/laravel/laravel/blob/8.... 最新版的是加入了,不知道你用的什么版本。

3个月前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!