2012-01-18 2 views
2

У меня есть этот объем:область применения доступны рельсы 3,1

scope ":user_id", :as => "user" do 
resources :boards, :controller => 'users/boards' 
end 

Я получаю этот маршрут:

http://localhost/hyperrjas/boards/ 

Я хочу URL без доски затем на routes.rb добавить:

scope ":user_id", :as => "user" do 
resources :boards, :controller => 'users/boards', :path => '/' 
end 

Это wo rks отлично, но он все еще доступен через «/ boards» ... Как мне это предотвратить? (Я использую Rails 3.1)

+0

Вы пытались добавить: except => [: index] в конец вашей линии ресурсов? –

ответ

0

Вы не должны указывать имена контроллера при использовании ресурсов и в этом Casei бы использовать вложенные ресурсы:

resource :user, only: :show do 
    resources :boards 
end 

Это должно дать вам следующее:

  • /: user_id
  • /: user_id/доски
  • /: user_id/доски/новый
  • /: user_id/доски /: идентификатор/
  • /: user_id/доски /: идентификатор/редактировать

и, конечно, ваши успокоительные маршруты!

Смежные вопросы