Ruby on rails 贝宝环境变量凭证
如何为PayPal凭据设置环境变量? 我找了很多,但没有任何线索。 这是中的代码 贝宝Ruby on rails 贝宝环境变量凭证,ruby-on-rails,ruby,paypal,Ruby On Rails,Ruby,Paypal,如何为PayPal凭据设置环境变量? 我找了很多,但没有任何线索。 这是中的代码 贝宝 PayPal::SDK.load("config/paypal.yml", Rails.env) PayPal::SDK.logger = Rails.logger merchant_id = "sts9n" public_key = "3jnfbc24f76" private_key = "a0167fd52cf3857e" 您只需将密钥添加到rails凭据: EDITOR=nano-rails凭证:编辑
PayPal::SDK.load("config/paypal.yml", Rails.env)
PayPal::SDK.logger = Rails.logger
merchant_id = "sts9n"
public_key = "3jnfbc24f76"
private_key = "a0167fd52cf3857e"
您只需将密钥添加到rails凭据:
EDITOR=nano-rails凭证:编辑
production:
paypal:
client_id: 'qwertzuiop'
client_secret: 'poiuztrewq'
然后在config/paypal.yml
中使用此凭据:
[…]
production:
mode: live
client_id: <%= Rails.application.credentials.dig(:production, paypal, :client_id) %>
client_secret: <%= Rails.application.credentials.dig(:production, paypal, :client_secret) %>
在config/paypal.yml
[…]
production:
mode: live
client_id: PAYPAL_CLIENT_ID
client_secret: PAYPAL_CLIENT_SECRET
您可以将凭据添加到credentials.yml,如下所示
EDITOR=nano rails credentials:edit
在凭证文件中添加PayPal密钥,如下所示
paypal:
development:
client_id: "sdsdsdvsdvsv"
client_secret: "sdfsdsdv"
production:
client_id: 'sdsdsdvsdvsv'
client_secret: 'sdsdsdvsdvsv'
然后在配置文件中创建一个名为paypal.YML的YML文件
development:
client_id: <%= Rails.application.credentials.paypal[:development][:client_id] %>
client_secret: <%= Rails.application.credentials.paypal[:development][:client_secret] %>
production:
client_id: <%= Rails.application.credentials.paypal[:production][:client_id] %>
client_secret: <%= Rails.application.credentials.paypal[:production][:client_secret] %>
mode: live
这样,当切换到开发到生产时,您不需要更改任何代码
development:
client_id: <%= Rails.application.credentials.paypal[:development][:client_id] %>
client_secret: <%= Rails.application.credentials.paypal[:development][:client_secret] %>
production:
client_id: <%= Rails.application.credentials.paypal[:production][:client_id] %>
client_secret: <%= Rails.application.credentials.paypal[:production][:client_secret] %>
mode: live
paypal_config_file = File.join(Rails.root,'config','paypal.yml')
raise "#{paypal_config_file} is missing!" unless File.exists? paypal_config_file
paypal_config = YAML.load(ERB.new(File.read(Rails.root.join('config','paypal.yml'))).result)[Rails.env].symbolize_keys
CLIENT_ID = paypal_config[:client_id]
CLIENT_SECRET = paypal_config[:client_secret]