Django中的Razorpay付款按钮连接

时间:2019-01-21 13:00:02

标签: python django razorpay

嘿,我试图用Django创建捐赠网络应用程序,但我从未在网关应用程序中工作过。

views.py

def payment_page(request):
    form = PaymentForm(request.POST or None)
    donation = request.POST.get('donation')
        try:
          donation = int(donation) * 100  # Note 1 Rs == 100 ps
          donation = str(donation)
        except TypeError: 
                donation = 100     
        #   If delete this you will TypeError Razorpay money should be greater than 1 ps 
    return render(request, 'mysite/payment_page.html', {'form':form, 'donation':donation})

我在try块中做了什么? 1 rs等于100ps,所以我将其乘以100。如果我不使用try,它会给我typeError

payment_page.html

<div class="container">
    <div class="jumbotron">
        <form method="post">{% csrf_token %}
            {{ form.as_p }}
            <button type="submit" class="btn btn-danger">Donate</button>
        </form>     
    </div>
</div>


<form action="/purchase" method="POST">

     <!-- Note that the amount is in paise = 50 INR -->

<script
    src="https://checkout.razorpay.com/v1/checkout.js"
    data-key="rzp_test_VKwzQnRYkTmxEW"
    data-amount="{{ donation }}"
    data-buttontext="Pay"
    data-name="Merchant Name"
    data-description="Purchase Description"
    data-image=""
    data-prefill.email=" email "
    data-theme.color="blue"
></script>
<input type="hidden" value="Hidden Element" name="hidden">
</form>

现在它是如何工作的,我在表单中输入姓名,捐赠金额,电子邮件,单击捐赠它保存在数据库中的金额,然后按“付款”以显示金额,但是我只希望有一个按钮可以同时完成这两项工作还是我做错了什么?

2 个答案:

答案 0 :(得分:1)

请勿使用“ {{donation}}”,它是按do {{donation}}类型的字符串,因此它将是Integer类型。

答案 1 :(得分:0)

我知道我为时已晚,但会帮助某人 默认情况下,Razorpay的脚本标签将包含一个我们无法删除的按钮,但可以由CSS修改.razorpay-payment-button