SDKLibrary版本: 1.13.1
环境:沙盒 沙盒
PayPal-Debug-ID值。无
语言、语言版本和操作系统。Python、Ubuntu
问题描述:当我试图取消一个计费协议时,我得到了以下错误。
该错误。
TypeError: cancel() missing 1 required positional argument: 'attributes'
我的代码。
billing_agreement = BillingAgreement.find(billing_id)
if billing_agreement.cancel():
print(billing_agreement)
else:
flash('We are having some difficulties canceling your subscription, please try again later.', 'fails')
return redirect(url_for('settings.settingspage'))
我得到了错误,因为我需要在属性的值的东西,但我不知道我应该分配给变量。
经过一些挖掘和查看文档样本,我发现了一个关于取消选项的样本,我需要给属性值分配的是一个 cancel_note
.
代码。
cancel_note = {"note": "Canceling the agreement"}
user = Users.query.filter_by(id=ID).first()
billing_id = Subscriptions.query.filter_by(email=user.email).filter_by(active=1).first().order_id
billing_agreement = BillingAgreement.find(billing_id)
if billing_agreement.cancel(cancel_note):
flash('Subscription canceled with success.', 'success')
return redirect(url_for('settings.settingspage'))
else:
flash('We are having some difficulties canceling your subscription, please try again later.', 'fails')
return redirect(url_for('settings.settingspage'))