Как получить идентификатор поля формы в Django?

Есть ли способ получить идентификатор поля в шаблоне?

В HTML я получаю: <input name="field_name" id="id_field_name"...

Я знаю, что могу получить имя с {{ field.html_name }}, но есть ли что-нибудь подобное для получения идентификатора?
Или я могу получить его только так: id_{{ field.html_name }}?

Ответ 1

Вы можете получить идентификатор, например:

{{ field.auto_id }}

Ответ 2

Вы также можете использовать id_for_label:

{{ field.id_for_label }}

Ответ 3

Это не работает для каждого поля формы.

Например, {{ form.address.auto_id }} работает, а {{ form.address.auto_name }} не будет.

Однако вы можете использовать {{ form.address.html_name }} для получения эквивалентного ответа.

Вот docs

Ответ 4

В Django 2 вы можете получить идентификатор для определенного поля, используя {{ field.id_for_label }}

Это задокументировано здесь.