ruby Rails:如何将用户输入的值添加到button_to

f5emj3cl  于 2023-10-18  发布在  Ruby
关注(0)|答案(1)|浏览(118)

我目前正在使用Stripe Checkout,我想将数量添加到我的“立即付款”按钮。我现在做的是

<%= button_to "Pay Now", checkout_create_path, params: {
        :article_id => @article.id}, remote: true %>

如何将字段添加到按钮的参数中,由用户填充并将其添加到按钮的params:字段中?
像这样,它不工作:

<%= number_field :quantity, :class => "form-control" %>
zynd9foi

zynd9foi1#

我想你可以写一些JS来给link/button添加参数,但这不是正确的方法。最好使用一个表单:

<%= form_tag checkout_create_path, remote: true do %>
  <%= hidden_field :order, :article_id, value: @article.id %>
  <%= number_field :order, :quantity, :class => "form-control" %>

  <%= submit_tag "Pay Now" %>
<% end %>

然后,您的控制器将可以访问以下参数:

{"order"=>{"article_id"=>"1", "quantity"=>"3"} ...}

你也可以有一个Order的概念,伴随着@order变量,并使用form_for @order

相关问题