2013-04-14 3 views
1

У меня есть мнение, называемый views/admin/slinky_files/new.html.erb, что я пытаюсь открыть следующую ссылку:Rails маршрутизации путь

<%= link_to 'Add New Slinky', new_slinky_file_path %> 

И это дает мне ошибку, когда я нажимаю на ссылку:

Routing Error 
uninitialized constant SlinkyFilesController 

И, конечно, это потому, что это должно быть Admin::SlinkyFilesController

Как исправить это? Мне как-то нужно направить new_slinky_file_path, чтобы вместо этого было что-то вроде admin_new_slinky_file_path Думаю?

rake routes | grep slinky ВЫВОД:

   slinkys GET /slinkys(.:format)       slinkys#index 
         POST /slinkys(.:format)       slinkys#create 
      new_slinky GET /slinkys/new(.:format)      slinkys#new 
      edit_slinky GET /slinkys/:id/edit(.:format)     slinkys#edit 
       slinky GET /slinkys/:id(.:format)      slinkys#show 
         PUT /slinkys/:id(.:format)      slinkys#update 
         DELETE /slinkys/:id(.:format)      slinkys#destroy 
     slinky_files GET /slinky_files(.:format)      slinky_files#index 
         POST /slinky_files(.:format)      slinky_files#create 
     new_slinky_file GET /slinky_files/new(.:format)     slinky_files#new 
    edit_slinky_file GET /slinky_files/:id/edit(.:format)    slinky_files#edit 
      slinky_file GET /slinky_files/:id(.:format)     slinky_files#show 
         PUT /slinky_files/:id(.:format)     slinky_files#update 
         DELETE /slinky_files/:id(.:format)     slinky_files#destroy 
     admin_slinkys GET /admin/slinkys(.:format)      admin/slinkys#index 
         POST /admin/slinkys(.:format)      admin/slinkys#create 
    new_admin_slinky GET /admin/slinkys/new(.:format)     admin/slinkys#new 
    edit_admin_slinky GET /admin/slinkys/:id/edit(.:format)    admin/slinkys#edit 
     admin_slinky GET /admin/slinkys/:id(.:format)     admin/slinkys#show 
         PUT /admin/slinkys/:id(.:format)     admin/slinkys#update 
         DELETE /admin/slinkys/:id(.:format)     admin/slinkys#destroy 
+0

Не могли бы вы отобразить свой выход «рейк-маршрутов»? – ted

+0

Вы уже активировали rake 10.0.4, но ваш Gemfile требует рейка 10.0.3. Использование bundle exec может решить эту проблему. – CodeGuy

+0

'bundle clean'' rake routes' – ted

ответ

1

шаблона:

<%= link_to 'Add New Slinky', new_admin_slinky_file_url %> 

Контроллер илит:

class Admin::SlinkyFilesController < ApplicationController 
    def new 
    @slinky_file = SlinkyFile.new 
    end 
end 

routes.rb:

scope "admin" do 
    resources :silky_files 
end 
+0

Теперь я получаю Нет совпадений маршрута [GET] "/ admin/slinky_files/new" – CodeGuy

+0

@CodeGuy Пожалуйста, включите соответствующий раздел 'routes.rb' и вывод связанных «рейковых маршрутов». –

+0

У меня уже был этот код контроллера. Теперь я получаю неопределенную локальную переменную или метод 'new_admin_slinky_file_url 'для # <# <Класс: 0x007fa3625ce5d8>: 0x007fa368257f48> – CodeGuy