Session :session_key. Aplication.rb

Que tal gente, estoy usando sesiones en mi aplicacion web y estoy
teniendo el siguiente problema.

en el Aplication.rb tengo la siguiente linea

session :session_key => ‘_miAplicacion’

Entiendo que las sesiones en ruby se crean como cookies, es decir que
crean un archivo con los valores que se guardan. El problema radica
cuando en la misma computadora acceden de diferentes ventanas (Ctrl+N)
al sistema, se pierden los valores de las sessiones anteriores y siempre
mantiene la ultima. Me imagino es por que el archivo que crea la session
se sobreescribe y lee siempre el ultimo valor.

Probe esto session :session_key => ‘_miAplicacion’ + Time.now.to_s Pero
no funciono (con la idea de crear archivos diferentes para cada session)

Gracias.

Una respuesta un poco tonta, pero que quizás te sirva. Si lo que quieres
es tener varias sesiones con distintos usuarios a la vez en el mismo
equipo puedes instalarte varios navegadores y entras en cada uno con un
usuario. No sé, firefox, safari, opera… y además así aprovechas para
probar que tu aplicación se ve correctamente en distintos entornos…

Daniel R. Troitiño escribió:

2008/7/23 Jorge J. [email protected]:

al sistema, se pierden los valores de las sessiones anteriores y siempre
mantiene la ultima. Me imagino es por que el archivo que crea la session
se sobreescribe y lee siempre el ultimo valor.

Probe esto session :session_key => ‘_miAplicacion’ + Time.now.to_s Pero
no funciono (con la idea de crear archivos diferentes para cada session)

Gracias.

Lo que pretendes hacer con :session_key es imposible, ya que el valor
de Time.now.to_s únicamente se evalua una vez, la primera vez que se
ejecuta esa línea, por lo que el :session_key no se modificaría con
cada petición.

De cualquier forma, si se modificara, no tendrías forma de recuperar
las sessiones, ya que un usuario que cambiase de página crearía una
sesión en el tiempo T, y en el tiempo T+1 otra, sin posibilidad de
recupera la sesión creada en T.

Me da la impresión de que estás intentando resolver un problema
imposible. Los navegadores almacenan las cookies en un lugar central,
y todas las ventanas y pestañas que creen acceden a las misma cookies
(aunque creo que Firefox tenía una extensión para tener cookies no
permanentes asociadas a cada pestaña/ventana). Y a pesar de que
cambies tu session_store de CookieStore a SQLStore u otro te daría
igual, porque el identificador de la sesión se sigue guardando en una
cookie.

Suerte.

El día 23 de julio de 2008 9:26, Jesús García Carrero
[email protected]
escribió:> Una respuesta un poco tonta, pero que quizás te sirva. Si lo que quieres

es tener varias sesiones con distintos usuarios a la vez en el mismo
equipo puedes instalarte varios navegadores y entras en cada uno con un
usuario. No sé, firefox, safari, opera… y además así aprovechas para
probar que tu aplicación se ve correctamente en distintos entornos…

Sip.

Lo suyo sería arrancar los navegadores en diferentes procesos. Eso en
Linux habrá trucos para conseguirlo, en Windows …
nosé.
Saludos
f.

Las opciones que me estan dando no las puedo aplicar… ya que el
sistema es empresarial y no puedo decirles a todos los usuarios (300
aprox) que instalen varios navegadores…

Gracias por las respuestas!

Saludos.