2012-04-11 62 views
1

我正在使用FOSUserBundle来管理用户,并且由于PdoSessionStorage会话被保存在数据库中。Symfony2&PdoSessionStorage:如何在数据库会话表中添加字段?

我想在我的会话表中添加字段:

  • USER_ID:这是一个外键引用登录用户的ID
  • IP:已记录在
  • END_TIME用户的IP地址:当用户已注销

这里的时间是我的应用程序/配置/ config.yml文件:

framework: 
    session: 
     default_locale: %locale% 
     auto_start: true 
     lifetime: 72000 
     storage_id: session.storage.pdo 

parameters: 
    pdo.db_options: 
     db_table: session 
     db_id_col: session_id 
     db_data_col: value 
     db_time_col: time 

services: 
    doctrine.dbal.default.wrapped_connection: 
     factory_service: doctrine.dbal.default_connection 
     factory_method: getWrappedConnection 
     class: PDO 
    session.storage.pdo: 
     class:  Symfony\Component\HttpFoundation\SessionStorage\PdoSessionStorage 
     arguments: [@doctrine.dbal.default.wrapped_connection, %session.storage.options%, %pdo.db_options%] 

我该怎么做?

我需要扩展PdoSessionStorage类吗?

如果是这样,该怎么做?

回答

2

简单地扩展PdoSessionStorage添加您的相关信息。你可以自由地添加任何依赖session.storage.pdo

关于用户ID,你没有做到这一点,它已经在会话数据(你必须来解码)。

相关问题