【发布时间】:2012-10-12 17:02:03
【问题描述】:
这个问题困扰了我一整天...
嗯;
我只是想将我的所有管理页面放在 /admin 目录中,并仅通过 domain/admin 样式接收它们。我尝试使用this 指南让它运行。
根据该官方指南,我正在寻找的是在我的routes.rb 文件中使用scope。因为,我在我的页面中使用了多次命名路由音调。我不希望我的 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 放在管理文件夹和控制器目录的根目录中...没办法。
我的错误在哪里? :(
提前谢谢...
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.2