Ich weiß nicht, ob's daran liegt: In der default
Einstellung wird cookie store für die Sessions verwendet und
da gibt es ein Limit bei 4096 KB.
Wenn Du noch andere Dinge in der Session gespeichert hast,
könnte es sein daß das Limit erreicht ist. Aber dann müßte
eigentlich ein Fehler geworfen werden.
Ansonsten würde ich kein Array in der Session ablegen.
Vielleicht lieber die jedem Wert einen eigenen Schlüssel geben
und mal testen, ob das besser ist.
Nur so, auf die Schnelle.
Hi Liste,
ich habe gerade ein seltsames Verhalten einer Session: Ich will
mir mir zuletzt angesehene ID's in der Session merken, dazu wird
in einer action ein array in die Session gelegt:
class TryoutController < ApplicationController
respond_to :js, :html
def stack
...
session[:stack_session] = []
...
end
und in einer anderen action werden id's in dieses Array gepackt:
def remember
session[:stack_session] << params[:card_id] if
session[:stack_session]
render :json => :ok, :status => "200"
end
Und genau das funktioniert nicht wirklich vorhersehbar: mal wird
die id hinzugefügt, mal nicht, mal klappt es dreimal
hintereinander, mal gar nicht. Merkwürdig ist, dass er den von
stack in die Session gelegten Array immer findet, auch der
AJAX-Call lokalisiert also die richtige Session, nur Änderungen
an dieser Session werden nicht über den Request hinaus
gespeichert.
Der entsprechende Test dazu läuft durch, das ganze funktioniert
nur nicht, wenn man es durchklickt. Kurioserweise kann man den
Controller per :html aufrufen, dann geht's reproduzierbar, nur
wenn man den Call per :js macht, dann wird die session
vergesslich - hat irgendjemand eine Idee, woran das liegen
könnte?!
Grüße
Stefan
_______________________________________________
rubyonrails-ug mailing list
rubyonrails-ug@headflash.com
http://mailman.headflash.com/listinfo/rubyonrails-ug