实际上我有五个基于Symfony 2.0的简单项目。每个项目都使用Doctrine ORM进行用户管理。
在捆绑包中,User
类的差异很小。 Bundle1 可能会添加“商家名称”属性, Bundle2 可能会添加“入站通信”关系。但是所有人都拥有相同的知名属性,如“盐”,“密码”,“用户名”,“角色”等。当然还有一些搜索用户的逻辑。
问题是统一用户管理的合理方法是什么?我的意思是创建一个可重用的UserBundle。我正在寻找关于xml配置,映射超类,服务,实体和表单继承的一些建议。
我看过FOSUserBundle,对我来说看起来有点复杂。我无法完全理解它的逻辑。我不需要模板和视图,因为我的五个包中的每一个都处理它。我更喜欢自己编写代码。
答案 0 :(得分:1)
我看过FOSUserBundle,对我来说看起来有点复杂。我无法完全理解它的逻辑。我不需要模板和视图,因为我的五个包中的每一个都处理它。我更喜欢自己编写代码。
你自己回答了你的问题,嵌入了利弊。
优点:
缺点:
如果您在一个经常开发涉及用户管理的项目的团队中工作,那么创建自己的项目是非常有价值的。
大多数发布的捆绑包最初是为个人使用而开发的。
如果您知道除了Doctrine2之外你不会使用其他任何东西,那么你可以绕过抽象的东西来使其与MongoDb一起工作。
如果您这样做,请记住,在使用与您相同的技术的同事使用它时,它将与其他开发人员共享。
如果你一个人,那就让它符合你的需要。