捆绑 Symfony 2 项目中的特征位置

Trait location in bundle Symfony 2 project

我对 Symfony 2 的设计有疑问。事实是我想在我的捆绑包中使用一个特性,但我不确定在哪里找到该特性。它不是控制器,也不是模型或实体。

我有一个解决方案,但我不确定它是否遵循最佳实践。这个想法是创建一个名为 /Trait 的新文件夹。正确吗?

<your-bundle>/
├─ AcmeBlogBundle.php
├─ Controller/
├─ Entity/
├─ Trait/ <- My thought
├─ README.md
├─ LICENSE
├─ Resources/
│   ├─ config/
│   ├─ doc/
│   │  └─ index.rst
│   ├─ translations/
│   ├─ views/
│   └─ public/
└─ Tests/

非常感谢

您不能使用 Trait,因为它是 php 关键字,所以您必须使用 Traits,但除此之外,您的建议很好。

Bundle 结构只是为了你的方便,它不应该限制你,随意创建你喜欢的任何命名空间。事实上你可以 use Symfony without bundles at all.