0
我试图根据我在测试/开发或生产中使用不同的条带键(信用卡支付处理系统)/根据我在StackOverflow上看到的建议,我做了以下:Rails:常量不初始化
在我/config/initalizers/stripe.rb文件,我有以下几点:
STRIPE_CONFIG = begin
config = YAML.load(File.open(Rails.root.join('config', 'stripe.yml')))
config = config[Rails.env] || {}
config.to_options
end
,在我/config/stripe.yml文件,我有以下几点:
default: &default
Stripe.api_key: "testapikeycode"
STRIPE_PUBLIC_KEY: "testpublickeycode"
development:
<<: *default
test:
<<: *default
production:
Stripe.api_key: "productionapikeycode"
STRIPE_PUBLIC_KEY: "productionpublickeycode"
然而,当我去到控制台(轨控制台),以及I型
puts STRIPE_PUBLIC_KEY
我收到以下错误信息:
NameError: uninitialized constant STRIPE_PUBLIC_KEY
任何想法?
替代方法
只使用stripe.rb,并在它下面的:
if Rails.env == 'production'
Stripe.api_key: "productionapikeycode"
STRIPE_PUBLIC_KEY: "productionpublickeycode"
else
Stripe.api_key: "tesapikeycode"
STRIPE_PUBLIC_KEY: "testpublickeycode"
end
YAML.load的作品。我最终没有使用这个,看到我原来的问题的意见 – EastsideDeveloper