Utilizo before_filter para invocar un def y asignarle un tiempo a la
session y con periodically_call_remote llamo a otro def que se encarga
de restarle tiempo a la session mientras no se haga o se mueva en la
pagina, si no se hace nada y el tiempo se consume se elimina la session
con reset_session.
El problemo que tengo es q no se como redireccionar a otra pagina o ir a
la pagina de inicio despues q elimino las variables de la session si
saben de alguna solucion diganme
Hola, gracias por responder, no entiendo muy biendonde colocar ese def
del que me hablas.
aqui te envio parte del codigo
/aqui asigno el tiempo de vida de la session siempre y cuando
ejecuten algo en la pagina********************/
def update_activity_time
session[:expires_at]=0.50.minutes.from_now
end
/esta es la funcion q mediante ajax resta el tiempo y elimina las
variables de la session ese redirect_to q tengo no me funciona
correctamente/
def session_expiry
esa funcion la puedes poner en el appcontroller asi puede quedar
disponible
para todos tus controllers
creo que podrias probar a hacer el reset session sin el tiempo, solo
para ir
probando si la session se crea y se resetea
la idea básica es preguntar si la session existe , si existe te quedas
donde
estas , si no te redirecciona a alguna pagina.
si te resulta eso ve probando los calculos de tiempo, siempre es buena
idea
mostrar las variables en tu pagina a modo de ir comprobando que
efectivamente los datos existen, por ejemplo un simple <%=
session[:expires_at] %> te ayudarÃa
esa funcion la puedes poner en el appcontroller asi puede quedar
disponible
para todos tus controllers
creo que podrias probar a hacer el reset session sin el tiempo, solo
para ir
probando si la session se crea y se resetea
la idea básica es preguntar si la session existe , si existe te quedas
donde
estas , si no te redirecciona a alguna pagina.
si te resulta eso ve probando los calculos de tiempo, siempre es buena
idea
mostrar las variables en tu pagina a modo de ir comprobando que
efectivamente los datos existen, por ejemplo un simple <%=
session[:expires_at] %> te ayudarÃa
prueba y nos cuentas como te fue
2008/3/7 Jhon K. [email protected]:
hola amigo, no te habia respomdido por q estaba full ocupado pero estoy
retomando otra vez lo que habia empezado.
A que te refieres al appcontroller? yo lo estoy colocando el
before_filter:update_activity_time,:except=>:session_expiry
y esas 2 funciones en el controlador donde creo las variables de
session.
algo que me parece curioso es q cuando el tiempo se acaba me elimina
todas las variables de session menos session[:expires_at] no se si es
por q la tengo en el mismo controlador, o si el periodically_call_remote
no deberia ir donde lo tengo
que es en un rhtml q es donde creo mi pagina principal.
si tienes alguna sugerencia o comentario te lo agradesco
esa funcion la puedes poner en el appcontroller asi puede quedar
disponible
para todos tus controllers
creo que podrias probar a hacer el reset session sin el tiempo, solo
para ir
probando si la session se crea y se resetea
la idea básica es preguntar si la session existe , si existe te quedas
donde
estas , si no te redirecciona a alguna pagina.
si te resulta eso ve probando los calculos de tiempo, siempre es buena
idea
mostrar las variables en tu pagina a modo de ir comprobando que
efectivamente los datos existen, por ejemplo un simple <%=
session[:expires_at] %> te ayudarÃa
prueba y nos cuentas como te fue
hola, hice unas cuantas pruebas y creo q el periodically_call_remote no me sirve para lo que quiero, por que el tiene un parametro :update con el q puedo actualizar es un div de mi codigo html y quiero es modificar el url; aparte de q si elimina las variables de session en el tiempo q yo le indico pero asi las destruya sigue invocando la funcion que verifica que el tiempo alla acabado y al no existir la variables de session da un error en la pagina principal.
si no me entiendes o no fiu muy claro dime para tratar de explicarme
mejor.
ahorita estoy investigando para ver si a las variables de session se les
asignar un tiempo de vida por defecto y si en alguna parte de la
configuracion yo puedo cambiarlo. al parecer hay un pugin session
timeout y estoy viendo como lo utilizo, cualquier sugerencia sera bien
recibida y si logro resolver mi problema te comentare como lo hice