Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Mengakses Parameter Permintaan GET dalam Django?

Bagaimana untuk Mengakses Parameter Permintaan GET dalam Django?

Barbara Streisand
Barbara Streisandasal
2024-11-30 04:47:13642semak imbas

How to Access GET Request Parameters in Django?

Cara Mendapatkan Nilai Permintaan GET dalam Django

Dalam Django, mengekstrak nilai permintaan GET daripada objek HttpRequest boleh dicapai tanpa menggunakan luaran perpustakaan.

Masalah:

Mengakses parameter GET daripada URL menggunakan sifat HttpRequest.GET menghasilkan objek QueryDict kosong.

Penyelesaian:

Untuk mendapatkan semula nilai permintaan GET secara langsung daripada HttpRequest, gunakan sintaks berikut:

request.GET.get('parameter_name', 'default_value')
  • Ganti 'parameter_name' dengan parameter GET yang diingini.
  • 'default_value' adalah pilihan dan menentukan nilai untuk dikembalikan jika parameter bukan dijumpai.

Contoh:

Untuk mendapatkan semula parameter 'q' daripada URL "domain/search/?q=haha":

q_value = request.GET.get('q', 'default')

Pembolehubah 'q_value' kini akan memegang nilai 'haha'.

Nota untuk Konfigurasi URL:

Jika parameter GET ditangkap menggunakan ungkapan biasa dalam URLconf, ia dihantar ke fungsi paparan yang berkaitan sebagai argumen atau argumen bernama. Tangkapan ungkapan biasa tersedia dalam fungsi ini.

Sebagai contoh, pertimbangkan konfigurasi URL berikut:

(r'^user/(?P<username>\w{0,50})/$', views.profile_page),

Dalam views.py, fungsi paparan halaman_profil akan kelihatan seperti ini:

def profile_page(request, username):
    # View logic goes here

Dalam kes ini, parameter GET 'nama pengguna' dihantar sebagai argumen 'nama pengguna' kepada fungsi profile_page.

Atas ialah kandungan terperinci Bagaimana untuk Mengakses Parameter Permintaan GET dalam Django?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn