是否有人可以详细解释Symfony *使用的标准来命名目录结构中的文件夹和文件?
MyBundle
├─ Controller/ <-- 1) why singular?
├─ Model/ <-- 2) why singular?
├─ Resources/ <-- 3) why plural?
│ ├─ config/ <-- 4) why the "c" is lowercase?
│ ├─ translations/
│ ├─ views/ <-- 5) why the "v" is lowercase and views is plural?
│ │ └─ Default/ <-- 6) Why uppercase?
│ │ └─ my_view.html.twig <-- 7) Why lowercase and snake case?
│ └─ public/
├─ Service/ <-- 8) why singular?
└─ Tests/
这引出了另一个问题:如果我想在Model文件夹中创建一个包含ArchiveSection
类的文件夹,我该如何命名?
谢谢!
*我使用的是Symfony 2.3。
答案 0 :(得分:1)
请参阅docs谈论捆绑目录结构。
我想说的是,请记住,Resources
目录结构必须遵循标准,才能在内核中自动注册视图路径和翻译文件。这同样适用于Command
目录。
其余的就是你想要它的方式,只要知道目录结构应该重复symfony组件结构以保持逻辑和可读性(Twig
目录用于创建twig扩展或函数,{{1用于保存自定义规范化程序的目录...)。
这与具有良好的目录结构相关,因为它定义了您的类名称空间结构。
答案 1 :(得分:0)
symfony框架中没有严格的结构和体系结构目录规则。但是存在最佳实践和标准惯例。
在你的情况下,没有任何问题,你可以做你想要的。 似乎名称目录中的下划线不是非常标准的约定,但不是强制性的。
对于单数或多项的问题处理,似乎是symfony开发人员未解决的问题。示例:我将我的服务目录命名为像'services'这样的plurial,并且我的所有代码都使用此名称完美运行。