Rails route: define root to namespace
18,760
Solution 1
namespace :mobile do
root :to => "posts#index"
resources :posts
end
root :to => "posts#index"
resources :posts
instead of
root :to => "posts#index"
resources :posts
namespace :mobile do
root :to => "posts#index"
resources :posts
end
Solution 2
namespace :mobile do
get "/" => "posts#index"
resources :posts
end
Using namespace already prepends mobile to the names of controllers inside that block.
Solution 3
Rails.application.routes.draw do
root to: 'front/homes#index'
namespace :front do
resources :homes
end
namespace :admin do
resources :interviews
end
resources :meetings do
resources :slides
end
end
In rails5 it works.
Comments
-
Said Kaldybaev almost 2 years
I've got 2 controllers:
app/ /controllers posts_controllers.rb /mobile posts_controllers.rb
and my routes.rb looks like this:
root :to => "posts#index" resources :posts namespace :mobile do root :to => "posts#index" resources :posts end
but when i visit
/mobile
, it's anyway rendering index page of first controller, also tried this:namespace :mobile do root :to => "mobile/posts#index" resources :posts end
but it's giving me error:
uninitialized constant Mobile::Mobile
I want to render the index page of second controller, how can i do that ?Edit
By entering /mobile i want to render files located here:
app/ views/ /mobile /posts index.html.erb
But it's rending files here:
app/ views/ /posts index.html.erb
-
Said Kaldybaev over 11 yearsthe complete routes.rb is in question