【问题标题】:Rails ENV variable inside Module模块内的 Rails ENV 变量
【发布时间】:2011-01-11 17:56:17
【问题描述】:

如何读取 ENV 变量

module MyModule
  def self.current_ip
    request.env['REMOTE_ADDR']
  end
end

MyModule::current_ip

怎么做?

【问题讨论】:

    标签: ruby-on-rails module


    【解决方案1】:

    这里的问题是您引用了模块范围内不存在的请求对象。 您需要将其传递或存储在某个地方。

    module MyModule
      mattr_accessor :request
      def self.current_ip
        request.env['REMOTE_ADDR']
      end
    end
    
    # store the request using a before filter
    # or similar approach
    MyModule.request = request
    
    MyModule::current_ip
    

    根据您的情况,可能会有更优雅的解决方案。

    【讨论】:

      【解决方案2】:

      为什么不只是ENV['REMOTE_ADDR']

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-09-22
      • 2021-12-22
      • 2014-05-21
      • 2011-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多