Rails抛出了load_missing_constant:期望path_to_x来定义X'但它确实如此

时间:2016-10-30 12:13:52

标签: ruby-on-rails ruby ruby-on-rails-3

我的错误:

/Users/-/.rvm/gems/ruby-2.3.1/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:512:in `load_missing_constant': 
Unable to autoload constant Types::QueryType, expected /Users/-/project/app/graph/types/query_type.rb to define it (LoadError)

app / graph / schema.rb:

module Graph
  Schema = GraphQL::Schema.define do
    query Types::QueryType
  end
end

应用程序/图形/类型/ query_type.rb:

module Graph
  module Types
    QueryType = GraphQL::ObjectType.define do
      name 'Query'
    end
  end
end

配置/ application.rb中:

config.autoload_paths << "#{Rails.root}/app/graph"
config.autoload_paths << "#{Rails.root}/app/graph/interfaces"
config.autoload_paths << "#{Rails.root}/app/graph/types"
config.autoload_paths << "#{Rails.root}/app/graph/unions"

Rails正确地期望在Types::QueryType中定义app/graph/types/query_type.rb,但是 - 奇怪的是 - 以某种方式得出结论,该文件没有定义Types::QueryType,这显然是这样做的。

甚至更奇怪:当跳进控制台时,它只会在第一次请求Types::QueryType时抛出此错误。然而第二次Types::QueryType解析为正确的定义。

我可能在这里做错了什么,但我似乎无法找到它。

0 个答案:

没有答案