テスト/開発中か本番中かによって、異なるストライプ キー (クレジット カード支払い処理システム) を使用しようとしています。StackOverflow で見た提案に基づいて、次のことを行いました。
私の /config/inititalizers/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
何か案は?
別の方法
strip.rb のみを使用し、次の内容を含めます。
if Rails.env == 'production'
Stripe.api_key: "productionapikeycode"
STRIPE_PUBLIC_KEY: "productionpublickeycode"
else
Stripe.api_key: "tesapikeycode"
STRIPE_PUBLIC_KEY: "testpublickeycode"
end