У меня есть некоторый код, который проверяет данные, поступающие из Webhook Stripe. Теперь я получил код, который запрашивает мою базу данных, чтобы проверить, был ли подтвержден платеж. Я пытаюсь написать функцию, которая проверяет мою базу данных, чтобы увидеть, был ли подтвержден платеж, если платеж еще не подтвержден, программа должна подождать 5 секунд, а затем проверить еще раз, проверяя не более 5 раз. Если после пятой попытки платеж по-прежнему не отображается как подтвержденный, необходимо перенаправить пользователя.
Это потому, что мой код может выполняться быстрее, чем Stripe возвращает свой ответ webhook на мой сервер.
Текущий код ниже. Как мне создать «цикл» в операторе if?
def accepted(request, payment_id):
r = Usertasks.objects.all().filter(user=request.user).filter(randomURL=payment_id).values("TaskPostedToNetwork")
e = Usertasks.objects.all().filter(user=request.user).filter(randomURL=payment_id).values("PaymentConfirmed")
if r == "False" and e == "yes":
print("true")
else:
return redirect('dashboard:index')
return render(request, 'request.html',)