Saya ingin menambahkan parameter permintaan ke {% url %}
tag, seperti ?office=foobar
.
Apakah ini mungkin? Saya tidak dapat menemukan apa pun di dalamnya.
django
django-templates
Brian D
sumber
sumber
Jawaban:
Tidak, karena parameter GET bukan bagian dari URL.
Cukup tambahkan ke bagian akhir:
Untuk Django 1.5+
sumber
example.com/myview/?office=foobar
bukanexample.com/myview?office=foobar
?Cara untuk mencampur parameter saat ini dengan yang baru:
Ubah setelan Anda agar memiliki variabel permintaan:
sumber
Gunakan
urlencode
jika argumennya adalah variabelatau karakter khusus seperti spasi dapat merusak URL Anda.
Dokumentasi: https://docs.djangoproject.com/en/3.0/ref/templates/builtins/#urlencode
sumber
some_var
variabel kembali kosong di href tetapi terbukti terisi jika digunakan di tempat lain di template. v2.1Pertama, jawaban konyol:
Jawaban yang serius: Tidak, Anda tidak bisa. Pemecah URL Django hanya cocok dengan bagian jalur dari URL, dengan demikian
{% url %}
tag hanya dapat membalikkan bagian dari URL itu.sumber
Coba ini:
Itu berhasil untuk saya. Ini pada dasarnya melakukan kebalikan pada tautan itu dan menerapkan argumen yang diberikan.
sumber