Fel*_*lix 1 ruby ruby-on-rails ruby-on-rails-4
嗨,是否可以从控制器读取设置 yml?我使用导轨 4.2.0
我想在 settings.yml 中存储一些全局信息以在视图中显示这些信息
目前我尝试这种方式:
settingsfile = File.read(Rails.root + "./config/settings.yml")
settingsfile = YAML.load(settingsfile)
settingsfile["default"]
Run Code Online (Sandbox Code Playgroud)
有效,但当我想更深入时
settingsfile["default"]["info"]
Run Code Online (Sandbox Code Playgroud)
它是空的
Yml文件
default:
supported_languages:
de: Deutsch
fr: Francais
en: English
it: Italiano
sv: Svenska
pt: Português
nl: Nederlands
es: Español
production:
info:
version: 2.0.0
datum: 11.05.2015
Run Code Online (Sandbox Code Playgroud)
不使用 gem .. 你可以使用类似 ..
你的 dev/config/email.yml
development:
:address: smtp.service.com
:port: 25
:user_name: mike@gmail.com
:password: mikepassword
production:
:address: smtp.gmail.com
:port: 587
:authentication: plain
:user_name: mike@gmail.com
:password: mikepassword
:enable_starttls_auto: true
Run Code Online (Sandbox Code Playgroud)
你可以像加载这个 yml 文件一样......
email_settings = YAML::load(File.open("#{Rails.root.to_s}/config/email.yml"))
ActionMailer::Base.smtp_settings = email_settings[Rails.env] unless email_settings[Rails.env].nil?
Run Code Online (Sandbox Code Playgroud)
您也可以使用 -Rails::Application.config_for(:email)如Rails 4+ 以后的文档中所示。
| 归档时间: |
|
| 查看次数: |
5169 次 |
| 最近记录: |