Django 4.1.1 В теге метки ChoiceField widget=forms.RadioSelect отсутствует атрибут 'for'

Я только что обновился с django 2.0.2 до 4.1.1. У меня есть несколько полей формы типа ChoiceField с forms.RadioSelect. В django 2.0.2 тег включал атрибут/ид 'for', поэтому я могу сделать запрос в шаблоне {% if field.id_for_label == "xyz" %}. Однако в 4.1.1 атрибут/id 'for' не включен (при проверке сгенерированного html источника), поэтому field.id_for_label пуст.

Все метки других полей по-прежнему включают атрибуты/id "для".

Вопросы:

  • Кто-нибудь сталкивался с этой проблемой?
  • Есть ли способ "заставить" атрибут "for" в метках?
  • Есть ли какой-нибудь другой способ идентифицировать поле? Я пробовал ... {% if field.label_tag == "label text" %}, но безрезультатно.

@doug-nintzel. Возможно, я инициировал это изменение в последней версии Django.

Если я возьму код шаблона radio-widget, то вот:

django\forms\templates\django\forms\widgets\radio.html
django\forms\templates\django\forms\widgets\radio-option.html

Я вижу, вы можете использовать:

{% if field.widget.attrs.id == "something" %} ... {% endif %}

вместо field.id_for_label

Вернуться на верх