перенаправление пользователей со страницы входа после входа в Rails с помощью Devise - PullRequest
0 голосов
/ 23 августа 2011

Я бы хотел, чтобы мои пользователи перенаправлялись на домашнюю страницу, если они заходят в "/ users / sign_in" после того, как они уже вошли в систему. Как я могу это сделать?

Ответы [ 3 ]

1 голос
/ 23 августа 2011

В вашем контроллере действие для входа на страницу (регистрация, вероятно, если вы используете devise).Вам придется переопределить контроллер, если вы этого еще не сделали.

def new    
  if current_user
    redirect_to home_page_url
  else
    #current logic for sign in method (super) if you currently don't have it implemented
  end
end
1 голос
/ 23 августа 2011

Я также нашел способ сделать это из файла router.rb;это намного проще, чем делать это с маршрутизатора, что потребует от меня переопределения контроллеров devise.

  authenticated :admin do
    root :to => 'admin/dashboard#show'
  end

  authenticated do
    root :to => 'dashboard#show'
  end

  root :to => 'landing#show'

http://rubydoc.info/github/plataformatec/devise/master/ActionDispatch/Routing/Mapper:authenticated

0 голосов
/ 23 августа 2011

Добавьте следующее в ваш route.rb:

  match "user_root", :to => "site#show"  # where SiteController#show is your home page
...