我目前正在关注Laravel Package文档,该文档使用workbench
工具创建一个标准包树,其中包含controller
,config
,views
等文件夹。基本上,您可以在标准的Laravel应用程序树中获得大多数文件夹。
但是,我有几个问题:
models
文件夹不存在? (尽管tests
和commands
)src/<Namespace>/<PackageName>
内应包含哪些课程?我注意到这里会自动创建一个ServiceProvider,但我可以想象大多数其他文件只存在于标准包目录中。答案 0 :(得分:0)
Wockbench只是一个用于创建其他工具的工具,通过CLI触发。 Workbench是一个非常抽象的概念。
模型文件夹不存在仅仅因为您不需要在每个新包中使用模型。例如,如果您正在创建中间件包或您拥有过滤器包。
每个新类都可以根据其目的和责任添加到包中。它可以通过多种方式完成。
通常足以进入每个包的类是:
Package Service Provider
Facade
Basic Class
但它不是黑匣子。考虑例如请求类 - 它在应用程序生命周期中很早就被绑定,因此不需要提供者。