Я использую Rails 3 и Devise для создания приложения, в котором пользователи приходят на сайт и им показывается домашняя страница, содержащая логин и форму регистрации. Эта страница имеет свой собственный контроллер ("homepage"), поэтому маршрут к ней
root :to => "homepage#index"
Я хочу отображать другую домашнюю страницу, если пользователи уже вошли в систему. Для этого нужно, чтобы корень указывал на
root :to => "dashboard#index"
Есть ли способ создать условный маршрут в routes.rb, который позволит мне проверить, аутентифицирован ли пользователь, прежде чем направить его на одну из этих домашних страниц?
Я пробовал использовать следующий код, но если я не вошел в систему, devise просит меня войти, поэтому очевидно, что работает только первый маршрут.
authenticate :user do
root :to => "dashboard#index"
end
root :to => "homepage#index"
Кроме того, я хочу, чтобы url указывал на www.example.com в обоих случаях, чтобы www.example.com/dashboard/index и www.example.com/homepage/index никогда не появлялись в браузере.
Спасибо миллион!!!