[quote=Kofel]user.save
[/quote]
update_attributes zapisuje rekord, więc save nic tu raczej nie pomoże.
Sajrox:
Najprawdopodobniej sessionid nie może być zapisane używając “mass assignment” (jeżeli nie kojarzysz co to takiego, to poszukaj na googlach tego zwrotu i dodatkowo zobacz metody attr_accessible i attr_protected w railsach).
Możesz spróbować update_attribute, tylko pamiętaj, że ta metoda opuszcza wszelkie callbacki i walidacje:
user.sessionid = params[:session_id])
user.save
W nowych railsach jest jeszcze jakiś argument, który pozwala ominąć sprawdzanie attr_accessible/attr_protected, ale nie pamiętam teraz, która wersja i co to było (możesz pogooglować).
Już wiem jaki był problem, a raczej dalej jest tylko nie wiem jak go obejść. Chodzi o to że w modelu User mam 2 walidatory:
validates_presence_of :password, :message => "Haslo jest wymagane"
validates_presence_of :password_confirmation, :message => "Musisz powtorzyc haslo"
Problem w tym że tych pól nie ba w tabeli, gdyż są potrzebne tylko do rejestracji i logowania.
Pytanie jak pominąć te walidatory przy aktualizacji tylko pola sessionid ? Siłą rzeczy aktualizuje tylko jedno pole a pole password i password_confirmation są puste.