Symfony2使用FOSUserBundle在mongodb和mysql中存储用户数据

时间:2014-06-30 13:30:42

标签: php mongodb symfony fosuserbundle symfony-2.3

我正在开发一个应用程序,希望使用symfony2中的FOSUserBundle在mongodb和mysql中存储用户数据。 我们可以在config.yml中配置FOSUserBunde中添加更多驱动程序吗?

需要一些建议或任何其他替代方案。

1 个答案:

答案 0 :(得分:1)

看看:http://docs.doctrine-project.org/projects/doctrine-mongodb-odm/en/latest/cookbook/blending-orm-and-mongodb-odm.html

fos_user_bundle可能不支持这个选项,只是因为他们需要知道捆绑包可以运行的驱动程序。但是,通过扩展fos_user BaseUser类,你可以添加你的属性,比如Id等...你可以在mongoDb中设置一些属性。可能问题只有一个:你需要创建一个名为:userInfo的集合或类似的东西,在那里存储您需要的财产。因此,扩展BaseUser的用户类与" mongoObject"有关系。包含userData的其余部分(如果您的目标是存储名称,姓氏等简单属性)。

我认为以这种方式运作。

一个精心设计,我真的想尝试使用"嵌入映射" of doctrine:http://doctrine-mongodb-odm.readthedocs.org/en/latest/reference/embedded-mapping.html通过这种方式,您可以将UserObject中的属性嵌入为MongoDb文档。

请记住在两种情况下都要为postLoad实现侦听器