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.