Я довольно новичок в Rails и создаю веб-приложение для изучения. В настоящее время у меня есть веб-приложение, работающее для приема новых пользователей и входа в систему. Однако я хочу заблокировать доступ к страницам, отличным от страницы входа, когда пользователи не вошли в систему. Я искал несколько часов и ничего, что я нашел, не сработало. , Я не хочу использовать для разработки. Вот мой код:
Контроллер приложения:
class ApplicationController < ActionController::Base
protect_from_forgery
include SessionsHelper
before_action :logged_in_user
end
Помощник сеанса:
module SessionsHelper
def current_user
@current_user ||= User.find(session[:user_id]) if session[:user_id]
end
def logged_in?
!current_user.nil?
end
# Confirms a logged-in user.
def logged_in_user
unless logged_in?
flash[:danger] = "Please log in."
redirect_to 'name of login page'
end
end
end
В настоящее время страница просто перезагружается снова и снова (потому что пользователь не вошел в систему) и время ожидания страницы истекает. Что я делаю не так?