将所选用户信息存储在数据库中

时间:2010-06-03 17:24:27

标签: symfony1 symfony-1.4

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

我宁愿不对系统进行大修以将所有会话数据存储在数据库中(除非它很简单且可以处理命名空间),但我找不到有关myUser类的推荐方式的任何信息将数据写入数据库。是否可以这样做,因为班级本身没有模型(我知道)?是否有任何建议的解决方案或最佳做法?

感谢。

更新

如果我将这一直归结为其基本要素,我想关键问题是:从myUser类读取/写入数据库的“最佳”方式是什么?或者,是否有另一条路径建议完成相同的最终结果?

2 个答案:

答案 0 :(得分:0)

将存储json_encodeserialize

的结果
$myUserInstance->getAttributeHolder()->getAll()

做这个工作?

答案 1 :(得分:0)

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

我选择来彻底检查我现有的缓存存储机制(为什么要打扰苹果推车?),并选择性地读取/写入memcached以获取真正需要共享的信息。