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

其他如

make:models

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

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
最佳答案

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

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

2年前 评论
讨论数量: 6

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

2年前 评论

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

2年前 评论

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

2年前 评论

@lun1bz 有的

"classmap": [
            "database/seeds",
            "database/factories"
        ],
2年前 评论

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

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

2年前 评论

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