关于Symfony2中的默认AppBundle

时间:2015-07-22 17:49:17

标签: symfony

创建新的SF2项目时,默认情况下项目包含AppBundle。是否应该像AcmeDemoBundle一样删除它?

2 个答案:

答案 0 :(得分:3)

Symfony最佳实践

  

对于大多数项目,您应该将所有内容存储在AppBundle中。

http://symfony.com/doc/current/best_practices/business-logic.html

多个捆绑

我倾向于创建多个捆绑包,例如我在src/

中有这些捆绑包
  • MyProjectEntityBundle
  • MyProjectBackendBundle
  • MyProjectHomePageBundle

对于可重用的组件,我创建了一个symfony包,我将其放入git存储库并使用satisfer通过composer加载它。例如,我在vendor/中有一些捆绑包:

  • VendorCmsUtilBundle
  • VendorImageThumbnailBundle

“域驱动设计(DDD)”

我还没有尝试过这种方法(我很快就会):

http://williamdurand.fr/2013/08/07/ddd-with-symfony2-folder-structure-and-code-first/

答案 1 :(得分:1)

正如@Marcel Burkhard指出的那样,AppBundle是您应该根据Symfony最佳实践放置所有应用程序逻辑的地方。当然你可以扔掉它并建立你自己的,但它绝对像

我不同意在不同捆绑中拆分实体和前端/后端的策略。

我同意创建自己的"实用程序" bundle(s),以便您可以通过composer在不同的项目中重用您的代码。