Come ottenere l'ID del campo del modulo in Django?


99

C'è un modo per ottenere l'ID di un campo in un modello?

Nell'HTML ottengo: <input name="field_name" id="id_field_name"...

So che posso ottenere il nome con {{ field.html_name }}, ma c'è qualcosa di simile per ottenere l'ID?
O posso ottenerlo solo in questo modo id_{{ field.html_name }}:?

Risposte:




11

Questo non funziona per ogni campo del modulo.

Ad esempio {{ form.address.auto_id }}funziona mentre {{ form.address.auto_name }}non lo farà.

Tuttavia puoi usare {{ form.address.html_name }}per ottenere la risposta equivalente.

Ecco i documenti


4
Penso che quello che vuoi dire sia che puoi usare "auto_id" per l'id, ma devi usare "html_name" per il nome. Purtroppo trovo che la tua risposta sia formulata in modo confuso data la domanda.
Steve il

Questa risposta non ha funzionato per me, e quella di Will ha funzionato perfettamente. Li ho provati uno dopo l'altro con un feedback immediato.
eficker

1

In Django 2 puoi recuperare l'ID per un campo specifico usando {{ field.id_for_label }}

Questo è documentato qui .

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.