所以我有一个Rails应用程序,我在销售订阅来访问内容。对于新泽西州的用户,我必须向他们收取7%的销售税。其他地方都是0.因此,当他们在Devise注册一个帐户时,我会记录他们的状态。安全地将订阅的tax_percent提交给Rails中的Stripe API
然后在我的SubscriptionsController.rb,我检查,看看他们住在新泽西州:
data = if current_user.home_state == "NJ"
subscription_params.merge(tax_percent: 7)
else
subscription_params
end
@subscription = ::Subscription.new(data)
当订阅被创建,订阅表得到正确更新。我还假设,当用户进行购买时,这个tax_percent也会触及Stripe的API,但事实并非如此。
所以我尝试添加这订购创建形式:
<%= f.hidden_field :tax_percent %>
,它并击中条纹的API,但命中为征税百分比:“”,这是空的。
所以我总是可以这样进行逻辑检查:
<% if current_user.home_state == "NJ" %>
<%= hidden_field :tax_percent, :value => '7' %>
<% end %>
但后来我的价值暴露给客户端,可控制的。
什么是最好的'轨'方式提交这个值到Stripe的API?
好吧,所以你还是坚持住了。你能显示你拥有的Stripe API调用代码吗?您不需要在表单中填写字段,只需通过相应的方法将值传递给Stripe API即可。没有什么与表格有关,我昨天解释了它。你从表单发送的数据是多余的,因为你正在捕获用户的选择。您所做的决定基于您在表格中的价值。所以它是预定义的。 –
下面是它添加隐藏字段显示的内容:由Koudoku :: SubscriptionsController处理#以HTML格式创建# 参数:{“utf8”=>“✓”,“authenticity_token”=>“token_here”,“subscription”=> {“ “=”“,”card_type“=>”未定义“},”owner_id“=>” 80“} – JohnOHFS
没有必要。 :)显示您必须创建订阅的条纹代码。 –