Измените поле формы Django на скрытое

У меня есть форма Django с RegexField , которая очень похожа на обычное поле ввода текста.

На мой взгляд, при определенных условиях я хочу скрыть его от пользователя и стараюсь сохранить форму как можно более похожей. Как лучше всего превратить это поле в поле HiddenInput ?

Я знаю, что могу установить атрибуты в поле с помощью:

form['fieldname'].field.widget.attr['readonly'] = 'readonly'

И я могу установить желаемое начальное значение с помощью:

form.initial['fieldname'] = 'mydesiredvalue'

Однако , это не изменит форму виджета.

Какой лучший / самый "django-y" / наименее "хакерский" способ сделать это поле field?

116
задан daaawx 25 April 2019 в 00:25
поделиться