Rails路由的未初始化常量问题

时间:2009-07-14 16:36:13

标签: ruby-on-rails routes

这是我的路线配置:

map.resources :services do |services|
  services.resources :capabilities do |capabilities|
    capabilities.resources :http_headers
  end
end

这是我的“佣金路线”输出:

laran:trunk laran$ rake routes
(in /Users/laran/workspace/kibo/mega/server/trunk)
                           accounts GET    /accounts(.:format)                                                               {:action=>"index", :controller=>"accounts"}
                                    POST   /accounts(.:format)                                                               {:action=>"create", :controller=>"accounts"}
                        new_account GET    /accounts/new(.:format)                                                           {:action=>"new", :controller=>"accounts"}
                       edit_account GET    /accounts/:id/edit(.:format)                                                      {:action=>"edit", :controller=>"accounts"}
                            account GET    /accounts/:id(.:format)                                                           {:action=>"show", :controller=>"accounts"}
                                    PUT    /accounts/:id(.:format)                                                           {:action=>"update", :controller=>"accounts"}
                                    DELETE /accounts/:id(.:format)                                                           {:action=>"destroy", :controller=>"accounts"}
                           services GET    /services(.:format)                                                               {:action=>"index", :controller=>"services"}
                                    POST   /services(.:format)                                                               {:action=>"create", :controller=>"services"}
                        new_service GET    /services/new(.:format)                                                           {:action=>"new", :controller=>"services"}
                       edit_service GET    /services/:id/edit(.:format)                                                      {:action=>"edit", :controller=>"services"}
                            service GET    /services/:id(.:format)                                                           {:action=>"show", :controller=>"services"}
                                    PUT    /services/:id(.:format)                                                           {:action=>"update", :controller=>"services"}
                                    DELETE /services/:id(.:format)                                                           {:action=>"destroy", :controller=>"services"}
               service_capabilities GET    /services/:service_id/capabilities(.:format)                                      {:action=>"index", :controller=>"capabilities"}
                                    POST   /services/:service_id/capabilities(.:format)                                      {:action=>"create", :controller=>"capabilities"}
             new_service_capability GET    /services/:service_id/capabilities/new(.:format)                                  {:action=>"new", :controller=>"capabilities"}
            edit_service_capability GET    /services/:service_id/capabilities/:id/edit(.:format)                             {:action=>"edit", :controller=>"capabilities"}
                 service_capability GET    /services/:service_id/capabilities/:id(.:format)                                  {:action=>"show", :controller=>"capabilities"}
                                    PUT    /services/:service_id/capabilities/:id(.:format)                                  {:action=>"update", :controller=>"capabilities"}
                                    DELETE /services/:service_id/capabilities/:id(.:format)                                  {:action=>"destroy", :controller=>"capabilities"}
    service_capability_http_headers GET    /services/:service_id/capabilities/:capability_id/http_headers(.:format)          {:action=>"index", :controller=>"http_headers"}
                                    POST   /services/:service_id/capabilities/:capability_id/http_headers(.:format)          {:action=>"create", :controller=>"http_headers"}
 new_service_capability_http_header GET    /services/:service_id/capabilities/:capability_id/http_headers/new(.:format)      {:action=>"new", :controller=>"http_headers"}
edit_service_capability_http_header GET    /services/:service_id/capabilities/:capability_id/http_headers/:id/edit(.:format) {:action=>"edit", :controller=>"http_headers"}
     service_capability_http_header GET    /services/:service_id/capabilities/:capability_id/http_headers/:id(.:format)      {:action=>"show", :controller=>"http_headers"}
                                    PUT    /services/:service_id/capabilities/:capability_id/http_headers/:id(.:format)      {:action=>"update", :controller=>"http_headers"}
                                    DELETE /services/:service_id/capabilities/:capability_id/http_headers/:id(.:format)      {:action=>"destroy", :controller=>"http_headers"}
                                           /login                                                                            {:action=>"login", :controller=>"accounts"}
                                           /logout                                                                           {:action=>"logout", :controller=>"accounts"}
                               root        /                                                                                 {:action=>"index", :controller=>"default"}
laran:trunk laran$ 

当我去/ services / new时,我收到了这个错误:

NameError in ServicesController#new

uninitialized constant ServicesController::Services

是什么给出的?我怎样才能正常工作和路由?感谢。

2 个答案:

答案 0 :(得分:4)

ServicesController是否由模型服务备份?您是否在控制器中意外地将其作为服务引用?

答案 1 :(得分:1)

这可能与您的路线没有任何关系; ServicesController中的new方法正在尝试使用不存在的名为Services的(类?常量?对象?)。