动作控制器::路由错误(未初始化的<控制器名称>)

3

我已经检查了常见的拼写错误或文件是否放错位置。毫无疑问,它一定是某个简单的问题 - 但是我就是看不出来。我错过了什么?

控制器/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

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                      

URL被称为

/admin/top_10_pages

开发日志中出现了错误

ActionController::RoutingError (uninitialized constant Admin::Top10PagesController):
1个回答

1

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

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

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


非常感谢您的帮助。按照建议更改了文件名和视图文件夹名称,现在一切都很好。有趣的是,“rails g controller Top10Pages”生成了文件top_10_pages_controller!再次感谢您的帮助 :-) - Bob

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接