Я не могу отфильтровать получение данных из моего 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)

Вернуться на верх