ruby-on-rails - 使用Stripe Checkout添加参数

标签 ruby-on-rails object stripe-payments params

我正在尝试向Stripe Checkout添加参数。

new.html.erb

<%= form_for @user do |f| %>

    <%= f.label :first_name %>
    <%= f.text_field :first_name %>

    <%= f.label :last_name %>
    <%= f.text_field :last_name %>

<% end %>
<%= form_tag charges_path, class: 'stripeform' do %>

    <script src="https://checkout.stripe.com/checkout.js" class="stripe-button"
            data-key="<%= Rails.configuration.stripe[:publishable_key] %>"
            data-description="Beautiful"
            data-amount="<%= @price*100 %>"
            data-image="<%= image_tag "logo.png" %>"></script>

<% end %>

考虑到Stripe有自己的“提交”按钮,如何传递附加参数?

最佳答案

您可以在用于Checkout的表单内添加额外的<input>字段。它们将与Stripe token 一起发布

<form action="/charge" method="POST">
  <input type="text" name="extraParam">
  <input type="text" name="extraParam2">
  <script
    src="https://checkout.stripe.com/checkout.js" class="stripe-button"
    data-key="pk_test_XXX"
    data-image="/square-image.png"
    data-name="Demo Site"
    data-description="2 widgets ($20.00)"
    data-amount="2000">
  </script>
</form>

另一种解决方案是使用Custom Checkout来检索token()回调中的 token ,然后将其添加为您自己的表单中的隐藏输入并提交。

关于ruby-on-rails - 使用Stripe Checkout添加参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28247894/

相关文章:

ruby-on-rails - rails : Get Client IP address

JavaScript:将函数存储在对象中,但在本地上下文中执行它

Java stackOverFlow 错误对象的编码方式不正确

c# - 如何从另一种方法访问我的控件

ruby-on-rails - 是否可以读取文件而不将其保存在 Rails 中?

ios - Apple Pay 与 React Native

integration-testing - 如何以 strip 方式测试订阅续订流程?

javascript - Rails 6 应用程序使用 Yarn (webpacker) 安装 Glide.js - 未捕获的 ReferenceError : Glide is not defined

ruby-on-rails - 为不同的用户配置文件设计具有多态关联的用户

java - ruby on rails 项目中的 jar 文件放在哪里?