Uso de variables session

hola a todos!

en mi proyecto uso varias variables de session pero quisiera usar una
instancia como la que usa @current_user del plugin
restful_authentication…

Como puedo hacer eso? alguien me puede echar una mano?

Muchas Gracias

2008/8/7 Manuel P. [email protected]:

en mi proyecto uso varias variables de session pero quisiera usar una
instancia como la que usa @current_user del plugin restful_authentication…

Por lo general no es buena practica usar mucho la sesion, y es aun mas
desaconsejable poner modelos en ella porque al guardarse serializados
pierden el vinculo con el registro original y es facil que se
desincronicen (generalizando). En lugar de guardar modelos se guardan
si acaso sus IDs, pero insisto que el uso de la sesion deberia ser
minimo.

El plugin que mencionas guarda el ID de usuario en sesion, y en cada
peticion que pasa por autenticacion lee el registro de base de datos a
partir de ese ID y lo pone en @current_user. No guarda el usuario
mismo en sesion como ves.

ah ok muchas gracias Xavier por la aclaratoria. Te informo que yo uso
varias
variables de session porque en el proyecto estaria a cada rato colocando
Clase.find(:id).
Por lo tanto para no ir a cada rato a la base de datos para consultar el
id
de alguna clase la guardo en una variable de session con lo cual puedo
conseguir registros relacionados a ese id

no se si me entiendes la idea… de todas maneras gracias por la
aclaratoria

El 7 de agosto de 2008 18:55, Xavier N. [email protected] escribió:

Hola,

ah ok muchas gracias Xavier por la aclaratoria. Te informo que yo uso
varias variables de session porque en el proyecto estaria a cada rato
colocando Clase.find(:id).
en ese caso, si quieres hacer lo mismo que hace restful_authentication,
simplemente defínete un before filter que haga

@current_clase = Clase.find(session[:clase_id]) rescue nil

saludos,


javier ramírez

…i do ruby on rails development in madrid, spain, at
http://www.aspgems.com
…you can find out more about me on http://formatinternet.wordpress.com
and http://workingwithrails.com/person/5987-javier-ramirez

Y añado:

Si quieres no saturar la BBDD con multiples Clase.find… (has
comentado que utilizas bastantes “parámetros”), utiliza memcached, la
primera consulta te irá a la BBDD, las posteriores directamente de
memcached. (Muuuuuucho más rápido).

mirate el plugin cache_fu, que hace realmente senzilla la tarea de
lidiar con memcached directamente.

Salutaciones,

Isaac Feliu