在决定将文件夹放置到 app\
文件夹中的资源时,我经常会发现问题。
我应该在哪里放置诸如 model observers
和 validators
以及 form macros
和 repositories
... . 目前我做以下事情
\app
\models
\controllers
\repositories
\observers
\interfaces
\validators
\views
虽然我看到有些人做了以下事情:
\app
\models
\controllers
\views
\YourAppNameHere
\Services
\validators
\...
我不明白\Acme 文件夹与实际应用程序相同时背后的原因?
最佳答案
掌握 Laravel 文件夹结构的最佳方法是将 app 目录视为 框架的前端。如果你看一下 git repository你会看到它们是分开的——你可以克隆核心库,也可以单独克隆 laravel 应用程序。应用程序及其子文件夹仅代表可以使用框架的一种方式。当然,它的设计涉及最佳实践。查看核心框架 tests 目录 - Laravel 开发人员将库视为“ headless ” - 没有应用程序。对我来说,这就是掌握 Laravel 所需的一切。
因此您可以自由修改现有结构,但请记住,某些更改需要您composer dump-autoload - 主要是因为命名空间。
关于php - Laravel 文件夹结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21379434/