我正在使用宝石条纹v4.0.3。如果我检索到订阅,则可以使用以下方式取消订阅:
subscription.cancel_at_period_end = true
subscription.save
根据stripe documentation,我也应该可以使用以下命令来做到这一点:
subscription.update(cancel_at_period_end: true)
但这会产生错误:
Failure/Error: subscription.update(cancel_at_period_end: true)
NoMethodError:
undefined method `update' for #<Stripe::Subscription:0x00007fcda95efd20>
这是为什么?
答案 0 :(得分:2)
条带支持确认文档示例中存在错误。他们还说有两种方法可以做到这一点
sub = Stripe::Subscription.retrieve("sub_xxxyyyzz")
sub.cancel_at_period_end = true
sub.save
Or
Stripe::Subscription.update("sub_xxxyyzz",{:cancel_at_period_end => true})
答案 1 :(得分:1)
没有任何方法可以更新订阅对象。 如果要在期末取消订阅,则需要调用订阅服务cancel方法。您将需要传递该客户和订阅ID,然后使用cancelAtPeriodEnd标志(将其设置为true)。