Придумайте вход в перенаправления на последнюю посещенную страницу - но как сделать исключения из этого? - PullRequest
2 голосов
/ 14 апреля 2011

У меня проблема с моим перенаправлением устройства.Я начал работать над тем, что когда люди заходят в мое приложение, они перенаправляются обратно на ту же страницу, на которой они были (первый метод ниже).Однако я хотел бы сделать два исключения из этого правила, которые я не могу заставить работать!

1) Когда люди регистрируются, я хочу, чтобы они перенаправили на user_root_path.

2) После того, как пользователь обновит свою учетную запись, я хочу, чтобы он перенаправил обратно на страницу редактирования.Прямо сейчас он отправляется на домашнюю страницу ... Я также хочу указать: уведомление здесь, но это также не работает!

Может кто-нибудь помочь мне в том, что я делаю неправильно?

в application_controller.rb:

def after_sign_in_path_for(resource_or_scope)
  case resource_or_scope
  when :user, User
    store_location = session[:return_to]
    clear_stored_location
    (store_location.nil?) ? user_root_path : store_location.to_s
  else
    super
  end
end

def after_update_path_for(resource) 
# set_flash_message :notice
flash[:notice] = "Account is changed!"
edit_user_registration_path 
# :notice => "succesfully updated your account" 
end

def after_sign_up_path_for(resource_or_scope)
case resource_or_scope
  when :user, User
    user_root_path
else
    super
end
end

def after_inactive_sign_up_path_for(resource)
    user_root_path
end

в rout.rb:

match 'private' => 'private#index', :as => 'user_root'
...