代码之家  ›  专栏  ›  技术社区  ›  Trenton Tyler

未初始化常量Syke::Core RubyGem

  •  0
  • Trenton Tyler  · 技术社区  · 7 年前

    我正在构建一个RubyGem来生成测试数据,在构建时遇到了一个问题。我有主菜 syke.rb 从初始gem构建生成的文件。

    require "syke/version"
    require "syke/internet"
    
    mydir = __dir__
    
    require 'i18n'
    
    I18n.load_path += Dir[File.join(mydir, 'locales', '**/*.yml')]
    I18n.available_locales = [:en]
    
    module Syke
      class Core
        class << self
          def get(key)
            I18n.t("syke.#{key}")
          end
        end
      end
    end
    

    我试图从一个 .yml 所以在我的档案里 internet.rb 我有这个文件:

    module Syke
      class Internet < Core
        class << self
          def email
            get('internet.domain')
          end
        end
      end
    end 
    

    NameError:未初始化的常量Syke::Core

    我让internet类继承了Syke模块下的核心类,所以我不明白为什么会收到这个错误消息。有人知道吗?谢谢。

    1 回复  |  直到 7 年前
        1
  •  1
  •   Chris Hall    7 年前

    问题是你的 require "syke/internet" Syke::Core .

    赛克:核心 syke.rb (要求上网前)文件或 internet.rb

    推荐文章