2010-06-03 90 views
1

使用Symfony 1.4.x(和Propel)时,我得到了一项任务,要求我与多个外部系统共享特定的用户信息。这当前存储为一个会话(在内存中)属性,但我需要将其存入数据库,以便我可以创建一个将向授权的消费者提供该信息的API。将选定的用户信息存储在数据库中

我宁愿不检修系统以将所有会话数据存储在数据库中(除非它是微不足道的并且可以处理命名空间),但我找不到任何关于myUser类的建议方式的信息以将数据写入数据库。是否有可能这样做,因为课堂本身没有模型(我知道)?有没有建议的解决方案或最佳做法做到这一点?

谢谢。

UPDATE

如果我是这一切的方式归结为它的最基本的要素,我想关键的问题是:什么是“最好”的方式,从读/写,从一个数据库myUser班?或者,还有另外一条建议达到相同最终结果的路径吗?

回答

0

由于没有从myUser类访问数据库的好方法,我选择了一条稍微不同的路径。我在两个应用程序均可访问的位置安装了memcached,并且扩展了PHP的Memcached类以应用一些自定义。应用程序现在可以通过将特殊格式的键写入memcached实例来共享信息。

我选择了而不是来彻底检查我现有的缓存存储机制(为什么会让苹果推车变得不安全?),并且有选择地读取/写入memcached以获取真正需要共享的信息。

0

将存储json_encode ING或serialize ING的

$myUserInstance->getAttributeHolder()->getAll() 

的结果做这项工作?

+0

它可能。对我来说,更大的问题实际上是从'myUser'类访问数据库的“最佳”方式是什么? – 2010-06-04 12:37:11

相关问题