0

我正在尝试在单独的 yml 文件中设置 rails 环境变量。它看起来像这样:

test:
  sap_url: "http://example.com/"

development:
  show_evp: 'true'
  show_social_media: "true"

production:
  show_evp: 'true'
  show_social_media: "true"

staging:
  show_evp: 'true'
  show_social_media: "true"

在我的 Rails 管理员中,我执行以下操作

  config.model Settings do
    weight 1
    list do
      field :id
      field :show_hot_jobs
      if ENV['SHOW_EVP'] == 'true'
        field :show_evp
      end
      field :show_students
      field :show_testimonials
      field :show_on_boarding
    end

但是这个变量总是错误的,任何人都知道我需要在哪里设置这些 rails env 变量或者我的有什么问题。

克鲁,文森特

4

2 回答 2

1

使用 Figaro gem 处理 ENV 变量和私有数据。简单易行。你不会后悔的。

于 2013-08-23T16:51:50.470 回答
1

谢谢你的帮助。我在 config 文件夹中创建了一个 .yml 文件,添加了 dev / staging / prod 所需的所有设置。

接下来在 lib 文件夹中创建一个模块并执行以下操作:

  def self.config
    OpenStruct.new \
    :url => yaml["url"]
  end

现在我可以通过“ModuleName”.config.url 使用它

克鲁,文斯

于 2013-08-27T07:43:32.337 回答