【发布时间】:2020-05-15 18:41:39
【问题描述】:
我正在寻找 razorpay 中的 order_id 以保存在数据库中,我如何在 views.py 中获取它以保存在数据库中。
razerpay 支付成功,但我想取回 那个 order_id。
我收到以下错误
模块“razorpay.client”没有属性“订单”
urls.py
>app_name = "checkout"
urlpatterns = [
path('payment/', payment, name="payment"),
path('checkout-form', checkout, name='checkout-form'),
]
views.py
def checkout(request):
user = request.user
carts = Cart.objects.filter(user=user)
orders = Order.objects.filter(user=user, ordered=False)
order = orders[0]
amount = int(order.get_totals() * 100)
context = {
"carts": carts,
'order': order,
'amount': amount,
}
return render(request, 'checkout-form.html', context)
def payment(request):
order = Order.objects.get(user=request.user, ordered=False)
amount = int(order.get_totals() * 100)
if request.method == 'POST':
print(" request is post ")
order_amount = amount,
order_currency = "INR",
order_receipt = 'order_rcptid_11'
course = client.order.create(amount=order_amount,
currency=order_currency,
receipt=order_receipt,
payment_capture='0')
# Create the Payment
payment = Payment()
payment.razorpay_order_ID = course['id'][0]
payment.user = request.user
payment.amount = int(order.get_totals())
payment.save()
print("this is the post payment method")
else:
# order = Order.objects.get(user=request.user, ordered=False)
# context = {
# 'order': order
# }
print(" request is get")
return render(request, 'checkout-form.html')
return redirect('checkout:payment/')
checkout.html
<form action="{% url 'checkout:payment' %}" method="POST">
{% csrf_token %}
<script src="https://checkout.razorpay.com/v1/checkout.js"
data-key="######################"
data-amount="{{ amount }}"
data-currency="INR"
data-buttontext="Pay with Razorpay"
data-name="Acme Corp"
data-description="A Wild Sheep Chase is the third novel by Japanese author Haruki Murakami"
data-image="https://example.com/your_logo.jpg"
data-prefill.name="Gaurav Kumar"
data-prefill.email="gaurav.kumar@example.com"
data-prefill.contact="9999999999"
data-theme.color="#F37254" > </script>
<input type="hidden" custom="Hidden Element" name="hidden">
</form>
【问题讨论】:
-
你好@S。 Panwar,如果您有答案,请接受答案
标签: django payment-gateway razorpay