Поскольку вы передаете параметр URL-адресу, вам также необходимо добавить этот аргумент в функцию. Итак, либо измените только свой views.py
, просто добавив параметр внутри функции
1. Лучший способ
# Edit
# Pass parameter like this, if it works or not, for all 4 anchors
<a href="{% url 'payments' wallet %}">Payments Wallet</a>
# Add data to the side of reqeust
def payments(request, data):
# If you getting query like this, then you don't have to pass parameter to url
# query = request.GET.get('data')
query = data
print(query)
return render(request, '403.html')
Или, если вы хотите получить параметр из метода get, измените URL-адрес. Итак, эфир, который вы берете из метода get, например:
2. Другой способ
# urls.py
urlpatterns = [
# removed data
path('payments',views.payments,name="payments"),
] + static(settings.MEDIA_URL,document_root = settings.MEDIA_ROOT)
# Your template where, your anchor is
<div class="card-body dropdown">
<button class="dropbtn">Pay</button>
<div class="dropdown-content">
<a href="{% url 'payments' %}?data=wallet">Payments Wallet</a>
<a href="{% url 'payments' %}?data=credit_card">Payments Credit card</a>
<a href="{% url 'payments' %}?data=debitcard">Payments Debitcard</a>
<a href="{% url 'payments' %}?data=bitcoin">Payments Bitcoin</a>
</div>
</div>
</div>
# views.py
# your views.py
def payments(request):
query = request.GET.get('data')
print(query)
return render(request, '403.html')