ActionController :: RoutingError(未初始化的<controller name =“”>)</controller>

时间:2012-10-12 14:07:01

标签: ruby-on-rails routing controller

我在错误的地方检查过通常的拼写错误或文件。毫无疑问,这将是一件简单的事情 - 但我无法看到它。我错过了什么?

控制器/管理/ top_10_pages_controller.rb

class Admin::Top10PagesController < Admin::AdminController

end

模型/ top_10_page.rb

class Top10Page < ActiveRecord::Base

end

的routes.rb

namespace :admin do
  resources :top_10_pages
end

rake routes

admin_top_10_pages     GET    /admin/top_10_pages           admin/top_10_pages#index                      
                       POST   /admin/top_10_pages           admin/top_10_pages#create                            
new_admin_top_10_page  GET    /admin/top_10_pages/new       admin/top_10_pages#new                      
edit_admin_top_10_page GET    /admin/top_10_pages/:id/edit  admin/top_10_pages#edit                     
admin_top_10_page      GET    /admin/top_10_pages/:id       admin/top_10_pages#show                   
                       PUT    /admin/top_10_pages/:id       admin/top_10_pages#update                 
                       DELETE /admin/top_10_pages/:id       admin/top_10_pages#destroy                      

调用的网址

/admin/top_10_pages

开发日志中的错误

ActionController::RoutingError (uninitialized constant Admin::Top10PagesController):

1 个答案:

答案 0 :(得分:1)

Bob - 我认为这是控制器文件本身名称的问题。

当我在控制台中运行"Top10PagesController".underscore时,我得到"top10_pages_controller"而不是"top_10_pages_controller"

看起来rails正在寻找错误的控制器文件。尝试将控制器名称更改为top10_pages_controller.rb并查看是否有效?