在我的config / applications.rb中,我设置了参数:
config.var1 = 1
config.var2 = 5
config.varx = 7
我可以使用
访问它们Rails.application.config.var1
我正在尝试动态构建名称以' var'开头的所有配置参数的哈希值,因此输出将是
{var1: 1, var2: 5, varx: 7}
我查看了Rails.application.config.methods,Rails.application.config.instance_variables,Rails.application.config.inspect等等,他们不会返回var1等。
如何以' var'开头动态访问所有配置参数?在config / applications.rb中定义?
感谢您的帮助。
答案 0 :(得分:1)
虽然我完全同意@SergioTulentsev 你做错了,但你仍然可以自由:
Rails::Railtie::Configuration.class_variable_get(:@@options)
.select { |k, _| k =~ /\Avar/ }
#⇒ {
# :var1 => 42
# }
事实上,通过method_missing
提供对此类变量的访问。