我正在尝试使用不同的条带键(信用卡支付处理系统),具体取决于我是在测试/开发还是生产/根据我在 StackOverflow 上看到的建议,我做了以下操作:
在我的 /config/initializers/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"
但是,当我进入控制台(rails 控制台)时,我输入
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