Bagaimana cara mendapatkan id form field di Django?


99

Apakah ada cara untuk mendapatkan id bidang di templat?

Di HTML saya mendapatkan: <input name="field_name" id="id_field_name"...

Saya tahu saya bisa mendapatkan nama dengan {{ field.html_name }}, tetapi apakah ada yang serupa untuk mendapatkan id?
Atau bisakah saya mendapatkannya seperti ini id_{{ field.html_name }}:?

Jawaban:


170

Anda bisa mendapatkan ID seperti ini:

{{ field.auto_id }}

1
bagaimana dengan nama field?
AJ

12
@Clayton{{ field.html_name }}
chucksash


11

Ini tidak berfungsi untuk setiap bidang formulir.

Misalnya {{ form.address.auto_id }}bekerja sementara {{ form.address.auto_name }}tidak mau.

Bagaimanapun Anda bisa menggunakan {{ form.address.html_name }}untuk mendapatkan jawaban yang setara.

Ini dokumentasinya


4
Saya pikir yang Anda maksud adalah Anda dapat menggunakan "auto_id" untuk id, tetapi Anda harus menggunakan "html_name" untuk namanya. Sayangnya saya menemukan jawaban Anda membingungkan mengingat pertanyaan itu.
Steve

Jawaban ini tidak berhasil untuk saya, dan jawaban Will di atas bekerja dengan sempurna. Saya mencobanya kembali dengan umpan balik instan.
eficker

1

Dalam Django 2 Anda dapat mengambil ID untuk bidang tertentu menggunakan {{ field.id_for_label }}

Ini didokumentasikan di sini .

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.