我的应用程序在我的localhost上的开发模式下运行良好。但是,当我将我的应用程序部署到Heroku时,我遇到了这样的错误:
/app/app/controllers/api/v1/Associations/associations_controller.rb:1:in `<top (required)>': uninitialized constant Api::V1::Associations (NameError)
我不知道我的代码有什么问题。在我的控制器中,我已经定义了类名,如下所示:
class Api::V1::Associations::AssociationsController < Api::V1::ApiController
我已将此代码放在我的application.rb上,但仍然没有运气:
config.autoload_paths += Dir["#{Rails.root}/app/api/*"]
我有以下路线:
namespace :api do
namespace :v1, :defaults => {:format => :json} do
namespace :associations do
get "/index" => "associations#index"
post "/create" => "associations#create"
post "/join" => "associations#join"
resources :associations_groups
resources :group_joined_by_springs
resources :group_created_by_springs
end
end
end
在我的本地使用开发模式下,一切正常。我无法弄清楚如何解决这个错误。我希望有人可以帮助我。
P / s:我已经查看了本网站提供的所有解决方案。
编辑(佣金路线)
以下是我的协会路线
api_v1_associations_index GET /api/v1/associations/index(.:format) api/v1/associations/associations#index {:format=>:json}
api_v1_associations_create POST /api/v1/associations/create(.:format) api/v1/associations/associations#create {:format=>:json}
api_v1_associations_join POST /api/v1/associations/join(.:format) api/v1/associations/associations#join {:format=>:json}
&#13;
答案 0 :(得分:0)
将您的api目录移至app目录并从application.rb中删除此设置 - {{1}}
应用程序和引擎中应用程序的所有子目录都在启动时出现。例如,app / controllers。它们不需要是默认目录,任何自定义目录(如app / workers)都会自动归属于autoload_paths。