`add_route ': неверное имя маршрута, уже используемое:' root '(ArgumentError)
Im, используя рельсы 4.1.1 и ruby 2.1.1, и у меня проблема с разработкой, а именно с моими маршрутами. Я использовал это много раз перед
devise_for :users
get 'pages/index'
# Route to Devise Login Page
devise_scope :user do
root to: "devise/sessions#new"
end
# Directing the user after login
authenticated :user do
root :to => 'pages#index'
end
Но я получаю ошибку
`add_route': Invalid route name, already in use: 'root' (ArgumentError)
при попытке запустить сервер. Я вижу, что этот root используется дважды, но, как я уже сказал, я смог сделать это в прошлом. Есть ли способ обойти этот
Спасибо
Ответы
Ответ 1
Нашел этот полезный комментарий здесь, в stackoverflow
Для Rails 4.0 вы должны убедиться, что у вас есть уникальные имена для пути помощники, например root: "dashboard # show", as:: authenticated_root. Иначе аутентифицированный корень и нормальный корневой путь в конечном итоге с тем же именем для их помощников по пути, которые Rails 4.0 больше не позволяет
поэтому я заменил свой аутентифицированный корень на помощник таким образом
# Directing the user after login
authenticated :user do
root :to => 'pages#index', as: :authenticated_root
end