Я не могу отфильтровать получение данных из моего url для сохранения в
Я хочу сохранить транзакцию и увеличить количество голосов на основе статуса, который я получаю из ответа url и перенаправить пользователя на страницу успеха. Но все транзакции переходят на страницу ошибки, даже если они успешны.
Я хочу проверить по URL, если status== 'Approved'
, то я сохраняю модель и обновляю модель новыми голосами и перенаправляю пользователя на страницу успеха. вот какой url-ответ я получаю http://127.0.0.1:8000/process-payment/robert-yenji/000000000050/?votes=1?status=Approved&code=000&reason=Approved%3A%20Transaction%20successful!&transaction_id=314304818998
это
my views.py
def process_payment(request, slug, amount):
trans_id = request.GET.get('transaction_id')
status = request.GET.get('status')
reason = request.GET.get('reason')
transaction_id = request.GET.get('transaction_id')
if status == 'Approved':
transaction = SuccessfulTransactionHistory(
nominee_name=slug,
transaction_id=transaction_id,
amount=amount
)
transaction.save()
nomination = Nomination.objects.filter(slug=slug).values('votes')
Nomination.objects.filter(slug=slug).update(votes=F('votes') + int(request.GET['votes']))
return redirect('/success')
else:
context = {
'error': reason
}
transaction = FailedTransactionHistory(
nominee_name=slug,
transaction_id=transaction_id,
amount=amount
)
transaction.save()
return render(request, 'payment_error.html', context=context)