Рельсы 2.3.11
Если пользователь пытается перейти к / фотографиям, когда он не вошел в систему, он направляется на [site]/admin/login?route=[site]/photos
. После того, как они войдут в систему, я бы хотел, чтобы их отправляли на то, что было определено в «маршруте» вместо домашней страницы по умолчанию.
В /app/controllers/admin_controller.rb:
def login
if session[:user_id] #already logged in
redirect_to ''
@destination = request.url
end
if request.post?
if [authentication code]
if user.activated? #check to see whether the user has activated their account
session[:user_id] = user.id
if params[:route] # ********
redirect_to "#{params[:route]}"
else
redirect_to :controller => 'home'
end
else
flash.now[:notice] = "Your account hasn't been activated yet. Check your emails!"
end
else
flash.now[:notice] = "Invalid email/password combination"
end
end
end
Строка ed "*" работает неправильно. Когда я проверяю параметры, среди них нет: route, поэтому аргумент не передается вместе с сообщением для входа. Может кто-нибудь объяснить мне, почему это не так и как я мог это исправить?
Спасибо!