Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在django paypal中启用定期付款?_Django_Paypal - Fatal编程技术网

如何在django paypal中启用定期付款?

如何在django paypal中启用定期付款?,django,paypal,Django,Paypal,我安装了django paypal,并尝试启用订阅按钮 我有以下看法 def donate_root(request): paypal_dict = { "business": PAYPAL_RECEIVER_EMAIL, "amount": "10.00", "item_name": "foobar money", 'currency_code': 'USD', "invoice": "unique-inv

我安装了django paypal,并尝试启用订阅按钮

我有以下看法

def donate_root(request):
    paypal_dict = {
        "business": PAYPAL_RECEIVER_EMAIL,
        "amount": "10.00",
        "item_name": "foobar money",
        'currency_code': 'USD',
        "invoice": "unique-invoice-id",
        "notify_url": "https://www.example.com" + reverse('paypal-ipn'),
        "return_url": "https://www.example.com/your-return-location/",
        "cancel_return": "https://www.example.com/your-cancel-location/",
        't3': 'D',
        'p3': '1',

    }
    form = PayPalPaymentsForm(initial=paypal_dict)
    context = {"form": form}
    return render_to_response("main.html", context)
在main.html中,div中包含以下内容

{{ form.render }}
当我点击链接时,它会将我带到paypal页面,该页面只收取一次钱,而不是定期付款

我做错了什么?我发现了错误

我使用的测试帐户不是业务帐户,表单发送的命令是错误的命令

正确的命令是“\u xclick-subscriptions”。如果您查看生成的html,您将看到这一行

<input id="id_cmd" type="hidden" value="_xclick" name="cmd">

该值必须替换为“\u xclick-subscriptions”命令

最后,我忘记了另一个变量a3,它表示我每个月要支付的金额


如果你正在读这篇文章,我的建议是不要使用django paypal。它很混乱,运行它时出现了很多错误

通过将cmd替换为_xclick-subscriptions,重复付款是否有效?如果从输入本身替换,则可以。我没有使用django paypal。我最终在html中使用了它们的按钮,并使用jQuery替换了需要手动更改的值。如果您将value=“\u xclick”更改为value=“\u xclick-subscriptions”,您将获得定期付款。但是,请确保您拥有htmli其余部分的所有正确变量。我还有一个疑问,即用户将如何取消此订阅,或者如果他通过paypal网站取消订阅,网站将如何知道他已取消订阅。您做到了吗?我从未实现过,但我认为paypal将调用您的IPN。看看这个例子,我想取消从贝宝网站还是有任何api取消从我们的网站