Ich arbeite an einer Kasse für ein Geschäft. Wenn das Formular gesendet wird, findet diese Aktion in meinem Controller statt
%Vor% Ich teste dies durch raise
ing innerhalb der Aktion und teste es mit better_errors:
Wenn ich jedoch zurück zu localhost: 3000 / gehe, wird current_user
wieder nil
:
Setzt der Benutzer "sign_in (guest)" die Sitzungsvariablen nicht so ein, dass " current_user
" über Anfragen "bestehen bleibt"?
Was mache ich falsch?
Ich habe es herausgefunden. In meinem Objekt @checkout
form aktualisiere ich die Attribute guest_user
s und speichere sie, wenn ich @checkout.save
aufruft. Ich denke, Devise muss die neueste Version von guest_user anmelden, also musste ich ein guest_user.reload
vor sign_in(guest_user)
Laden Sie kurz Ihren Benutzer ( user.reload
) neu, bevor Sie sich anmelden.
Tags und Links ruby-on-rails