微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Ruby gem 在可执行文件中使用配置

如何解决Ruby gem 在可执行文件中使用配置

我正在构建一个 gem,它在将它添加到项目时需要配置并且还有一个可执行命令。

我现在的结构是:

module MyGem
  class << self
    attr_accessor :configuration
  end

  def self.configure
    self.configuration ||= Configuration.new
    yield(configuration)
  end

  class Configuration
    attr_accessor :base_url

    def initialize
      @base_url = ''
    end
  end

  def self.method_to_run
    puts self.configuration
  end
end

在 gem 源的 /bin/my-gem 文件中,我有

#!/usr/bin/env ruby

require 'my-gem'

puts("config: #{MyGem.configuration}")
puts MyGem.method_to_run

在这种情况下,运行 my-gem 时的输出是:

(empty line)
config:

当我进入另一个项目时,设置了初始化程序,在 rails console 中,配置被设置,我可以顺利运行一切。

如何在命令中使用项目中的设置配置?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。