witam
mam problem przy akcji logowania użytkownika. create w user_sessions_controller:
def create
@user_session = UserSession.new(:user_session)
p @user_session
if @user_session.save
flash[:notice] = "działa"
else
flash[:notice] = "dupa!"
end
redirect_to root_path
end
na konsoli wyświetla: #<UserSession: {:username=>“ala”, :password=>""}> natomiast zawsze widzę dupę (; (i akcja logout działa na nilu…) dodam, że .create nic nie zmienia a .save! wyrzuca: Your session is invalid and has the following errors: Username nie istnieje
i jeszcze widoki:
[code=“ruby”]
<% form_for @user_session do |f| %>
<%= f.label :username, “Login” %>
<%= f.text_field :username %>
<%= f.label :password, “Hasło” %>
<%= f.password_field :password %>
<%= f.submit ‘zaloguj’ %>
<% end %>
#…
<% form_for(@user) do |f| %>
<%= f.error_messages %>
[quote=radarek]UserSession.new(params[:user_session])
[/quote]
oczywiście miałem params tylko wklejając kod tej jednej rzeczy nie poprawiłem (pozostałość po n-tej beznadziejnej próbie poradzenia sobie samemu :P)
jest, użytkownik dobrze jest zapisywany do bazy razem z zaszyfrowanym hasłem etc., problem mam przy logowaniu. tak wzorowałem się na tym kaście jak i innych.
–
ok znalazłem swój problem… podany wyżej kod był tylko dla przypadku na którym walczyłem z authlogic (i nie wiem nadal dlaczego nie działał ale nie ważne), natomiast problem miałem z inną aplikacją gdzie logowanie usera działało, natomiast dodawałem dla admina (mającego osobny model) i chciałem użyć tej samem obsługi sesji co się nie udawało. zrobiłem osobną klasę AdministratorSessionController i do niej skierowałem logowanie admina i działa O.o. głowę posypuję popiołem za fejkowy post ale i tak nie podoba mi się takie rozwiązanie, powielanie tego samego żeby tylko zmienić UserSession na AdministratorSession… da się to ładnie obejść?