Symfony 2中的应用程序结构

问题描述 投票:1回答:2

我对symfony框架比较陌生,上了一些课,并从knpuniverse购买了“ 从Symfony2开始 ”教程。 我想确保我为我的应用程序使用正确的设置。 我的问题是,你怎么称呼你的第一个中央捆绑? 例如。 FrontendBundle? 我想在应用程序中进行下一个结构:

  • FrontendBundle
    • 人们获得登陆站点的正面,他们也可以登录

从那里,当他们登录时,他们进入下一个捆绑包:

  • CustomerBundle
    • 后端应用程序,客户可以获取发票并付款并编辑我们存储在数据库中的信息

至少:

  • AdminBundle
    • 另一个后端应用程序,我可以在其中编辑客户,为客户开具发票并编辑应用程序信息

这是正确的方法吗,FOSUserBundle是此类应用程序的理想组合吗?

php symfony fosuserbundle
2个回答
0
投票

捆绑软件只有在可以用于“多个项目”中时才有意义。 我的意思是:如果您编写代码,则将其作为一个包,您将无法重用该包(例如,因为如上所述,这些包严格且逻辑上与您的项目相关联),这三个包分离是完全没有用的。

因此,最终答案(也是一个问题)是:

您可以在其他项目中重用FrontendBundle吗?
您可以在其他项目中重用CustomBundle吗?
您可以在其他项目中重用AdminBundle吗?

如果您发现您不能将任何或所有这些捆绑软件用于其他项目,则这种分离可能不是很好。

我为什么这么说?

因为如果他们不能分离的方式来使用是可能 ,他们应该togheter使用,因此,你应该让他们togheter。

因此,我建议将它们放入一个单独的捆绑包(例如,YourNameYourBundleNameBundle(以该表示法表示)),并分开单个“区域”:

  • 前端控制器/实体/视图
  • 自定义控制器/实体/视图
  • 管理员/实体/视图

0
投票

这个问题已经详细讨论过了。 对于特定于应用程序的代码要么做一个AppBundle要么根本不使用捆绑包

© www.soinside.com 2019 - 2024. All rights reserved.