2

实际上我有五个基于 Symfony 2.0 的简单项目。每个项目都有使用 Doctrine ORM 的用户管理。

在捆绑包中,User类几乎没有区别。Bundle1可以添加“企业名称”属性,Bundle2可以添加“入站通信”关系。但它们都共享相同的众所周知的属性,如“salt”、“password”、“username”、“roles”等。当然还有一些搜索用户的逻辑。

问题是统一用户管理的合理方法是什么?我的意思是创建一个可重用的 UserBundle。我正在寻找一些关于 xml 配置、映射的超类、服务、实体和表单继承的建议。

我看过 FOSUserBundle,对我来说看起来有点复杂。我无法完全理解它的逻辑。我不需要模板和视图,因为我的五个包中的每一个都可以处理这些。而且我更喜欢自己编写代码。

4

1 回答 1

1

我看过 FOSUserBundle,对我来说看起来有点复杂。我无法完全理解它的逻辑。我不需要模板和视图,因为我的五个包中的每一个都可以处理这些。而且我更喜欢自己编写代码。

你自己回答你的问题,嵌入利弊。

优点:

  • 可重用代码使开发更快

缺点:

  • 可重用代码通常更通用,并导致更复杂的事情来解决问题。

如果您在一个经常开发涉及用户管理的项目的团队中工作,那么制作自己的项目是完全有价值的。

大多数已发布的捆绑包最初都是为个人使用而开发的。

如果你知道你不会使用 Doctrine2 以外的任何东西,你可以绕过抽象事物的部分,使其与 MongoDb 一起工作。

如果您这样做,请记住,它将在其他开发人员之间共享,同时由与您使用相同技术的同事使用。

如果你一个人,让它满足你的需求。

于 2012-09-14T14:40:06.420 回答