2
我是Symfony2的新手,我正在将一个旧的Symfony1应用程序移植到v2。Symfony2:几个包可以访问存储在数据库中的名称值
在我的旧应用程序中,我将所有模型定义在一个很棒的大YML文件中。因此,各种“组件”能够引用相同的名称值对(存储在YML文件中)。
我现在将功能分解为捆绑包,并且我想彻底解耦这些捆绑包。我仍然需要访问名称值对,但我希望将它集中存储在这个数据库中。
我想让我的代码保持干爽,所以想写代码来访问名称值对只有一些和如何在单独的捆绑使用。
我也想提供集中的CRUD工具来维护名称值对。
总之,我的2个问题如下:
我怎样才能提供的功能(实现一次)来访问存储在数据库中的名称值对,并提供此功能需要它捆绑?
为维护名称值对提供CRUD功能的最佳方式是什么? (它是通过创建另一个包?) 我不知道
感谢您的回答。我想确保我正确理解您提出的解决方案。在上面的例子中,所使用的名称空间似乎表明Pair(和PairRepository)实体代码是为每个** bundle编写的。我的理解是否正确? (即每个包将其Pair和PairRepository类复制到其文件夹中)?。我试图避免这样的做法,因为它是**不干**。请澄清。 – 2012-08-10 07:46:40
您可以在软件包之间共享代码。你只写一次,然后重新使用这个包。 Symfony的'FrameworkBundle'就是这样工作的。 – Florent 2012-08-10 08:13:31
是的,这就是我想要做的(即写一次,然后重新使用该包)。然而,我不明白你的回答是如何解决这个问题的 - 除非'MyBundle'(来自你的代码片段)是一个新的bundle,它被**用来获取/列出一个特定的对。在这种情况下,我仍然不清楚。例如,如果我有以下名称对列表:ReadingCategory,SportsCategory,FoodCategory,** 1。**是否需要创建3个单独的包(每个名称对列表专用一个包)? ** 2。**我如何(例如)在代码中从'BundleB'引用'BundleA'? – 2012-08-10 08:47:43