today_ai_weather/app/controllers/sessions_controller.rb
songtianlun ccd6b02a98 feat: add remember me functionality for user sessions
- Implement remember method in User model to generate and store a remember token
- Update SessionsController to call remember on successful login
- Enhance current_user method to retrieve user from cookies if session is not present
- Add forget method to clear remember token on logout
- Create migration to add remember_digest column to users table
2025-01-02 16:47:26 +08:00

25 lines
538 B
Ruby

class SessionsController < ApplicationController
include SessionsHelper
def new
end
def create
user = User.find_by(email: params[:session][:email].downcase)
# if user && user.authenticate(params[:session][:password])
if user&.authenticate(params[:session][:password])
reset_session
remember user
log_in user
redirect_to user
else
flash.now[:danger] = 'Invalid email/password combination'
render 'new'
end
end
def destroy
log_out
redirect_to root_url
end
end