【问题标题】:ActionController::RoutingError (uninitialised <controller name>)ActionController::RoutingError(未初始化的<控制器名称>)
【发布时间】:2012-10-03 08:57:36
【问题描述】:

我已经检查了常见的拼写错误或文件在错误的位置。毫无疑问,这将是一件简单的事情——但我就是看不到。我错过了什么?

controllers/admin/top_10_pages_controller.rb

class Admin::Top10PagesController < Admin::AdminController

end

models/top_10_page.rb

class Top10Page < ActiveRecord::Base

end

routes.rb

namespace :admin do
  resources :top_10_pages
end

搜索路线

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                      

调用的 URL

/admin/top_10_pages

来自开发日志的错误

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

【问题讨论】:

    标签: ruby-on-rails routing controller


    【解决方案1】:

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

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

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

    【讨论】:

    • 非常感谢。按照建议更改了文件名,还有视图文件夹名称,一切都很好。有趣的是,'rails g controller Top10Pages' 生成了文件 top_10_pages_controller! - 再次感谢您的帮助:-)
    猜你喜欢
    • 1970-01-01
    • 2018-09-04
    • 2013-08-25
    • 2016-01-16
    • 2016-01-19
    • 2017-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多