Ruby包装器的凭据不返回对象

时间:2019-07-16 19:32:46

标签: ruby-on-rails ruby ruby-on-rails-5.2

尝试后,我试图弄清楚如何返回Rails.application对象。

Cred.new(:development),我的Cred对象已定义,但其下面的方法未定义。因此,不会返回@credentials。

class Cred

  def initialize(env)
    if [:test, :development, :production, :staging].include?(env)
      puts env
        @credentials = Rails.application.credentials.send(env)
    else
      raise("Cred: #{env} is not a defined environment")
    end
    @credentials
  end
end

澄清...

如果@credentails =“ test”并且我做了Cred.new(:development),我希望它返回“ test”。

我能够完成此任务...

class Cred

  def initialize(env)
    if [:test, :development, :production, :staging].include?(env)
      puts env
        @credentials = Rails.application.credentials.send(env)
    else
      raise("Cred: #{env} is not a defined environment")
    end
    @credentials
  end

  def call
    @credentials
  end
end

并调用.call,但我不想不必使用.call。

0 个答案:

没有答案