这个问题花了我一整天...
好;
我只是想将我所有的管理页面放在 /admin 目录中,并仅通过 domain/admin 样式接收它们。我试图让它与本指南一起运行。
根据该官方指南,我正在寻找的是scope
在我的routes.rb
文件中使用。因为,我在我的页面中使用了多次命名路由音调。我不希望我的program_path
命名路线改变admin_program_path
,因为我有 28 种不同的用法。
所以我应该使用scope
而不是namespace
.
问题是:我无法scope
使用我的项目。
这是我的路线.rb
scope "/admin" do
get "access/login"
get "access/index"
match "access/login_attempt", to: "access#login_attempt"
match "access/logout", to: "access#logout"
resources :admin_users
root to: 'programs#index'
resources :programs
resources :program_categories
resources :program_subcategories
resources :articles
resources :pictures
match '/kategoriler/:id' => 'program_categories#show'
match '/kategoriler' => 'program_categories#index'
match '/kategori/yeni' => 'program_categories#new'
match 'program/yeni' => 'programs#new'
match 'programlar' => 'programs#index'
match '/progam_categories/select_category/:program_id' => 'program_categories#select_category'
match '/program_subcategories/select_subcategory' => 'program_subcategories#select_subcategory'
match '/program_subcategory/add_subcategory' => 'program_subcategories#add_subcategory'
end
这是我的控制器开始:
class ProgramsController < ApplicationController
就像这里所说的:
If you want to route /admin/posts to PostsController (without the Admin:: module prefix), you could use
scope "/admin" do
resources :posts, :comments
end
结果,我得到了什么?
此错误消息:
Routing Error
uninitialized constant ProgramsController
无论我尝试访问哪个控制器,错误都会以这种方式发生变化。例如uninitialized constant ProgramCategoriesController
,uninitialized constant ProgramSubcategoriesController
等等...
我试图将application_controller
两者都放在管理文件夹和控制器目录的根目录中......没办法。
我的错误在哪里?:(
提前致谢...