سلام دوستان من یک فروشگاه اینترنتی ساختم و الان به درگاه پرداخت زرین پال متصل شدم بعد از پرداخت که باید متد verify اجرا بشه کاربر logout شده و میره صفحه login مشکل چی هست؟کسی تا حالا واسش اتفاق افتاده؟
تخصص: برنامهنویس وب: Python :: Django :: Node :: Php :: Laravel :: JS :: React :: React Native
سلام لطفا کد هاتون رو قرار بدید
@login_required(login_url="login")
def payment(request,order_id,price):
global amount , o_id
amount = price
o_id = order_id
result = client.service.PaymentRequest(MERCHANT, amount, description,email,mobile,CallbackURL)
if result.Status == 100:
return redirect('https://sandbox.zarinpal.com/pg/StartPay/' + str(result.Authority))
else:
return HttpResponse('Error code: ' + str(result.Status))
def verify(request):
if request.GET.get('Status') == 'OK':
result=client.service.PaymentVerification(MERCHANT,request.GET['Authority'],amount)
if result.Status == 100:
order=Order.objects.get(id=o_id)
order.paid=True
order.save()
messages.success(request,'پرداخت با موفقیت انجام شد','success')
return redirect('home')
elif result.Status == 101:
return HttpResponse('Transaction submitted')
else:
return HttpResponse('Transaction failed.')
else:
return HttpResponse('Transaction failed or canceled by usشاید پاسخ شما همینجا باشد
تخصص: برنامهنویس وب: Python :: Django :: Node :: Php :: Laravel :: JS :: React :: React Native
در اول متد verify کد global amount , o_id رو قرار بدید.
سلام احتمال زیاد وقتی دارید از این متغیر ها استفاده میکنید هنوز فانکشن invoke نشده
بیرون از بدنه فانکشن قرار بدید مشکل حل میشه