Rails - LoadError(无法自动加载常量_期望_来定义它)只是间歇性地发生,刷新修复了问题

时间:2016-11-02 07:32:21

标签: ruby-on-rails ruby

My Rails 5.0.1应用程序使用了很多命名空间,而且我最近在尝试访问控制器时遇到LoadError (expected to define)。但问题是,它只是偶尔发生,使用不同的控制器,并重新加载页面修复它。

导致此错误的控制器示例:

LoadError (Unable to autoload constant
API::V1::ProgramRequirements::Requirements::StudentRequirementsController, expected
/app/controllers/api/v1/program_requirements/requirements/student_requirements_controller.rb to define it)

ls目录的/app/controllers/api/v1/program_requirements/requirements

{other_controllers} student_requirements_controller.rb

控制器:

module API::V1::ProgramRequirements::Requirements
  class StudentRequirementsController < ::API::V1::ApplicationController
    # omitted....
  end
end

路线:

namespace :api do
  namespace :v1 do
    namespace :program_requirements do
      resources :requirements, except: [:new, :edit] do
        scope module: :requirements do
          resources :student_requirements, except: [:new, :edit]
        end
      end  
    end
  end
end

这个问题最近才开始发生,并且它并不总是发生在同一个控制器上。在定义的相同命名空间下,我没有任何其他具有相同名称的控制器。

0 个答案:

没有答案