所以我有一個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
沒有必要。 :)顯示您必須創建訂閱的條紋代碼。 –