Вы можете изменить форму, используя javascript, включив файлы javascript во внутренний класс ваших форм 'Media'
class MyForm(form.ModelForm):
...
class Media:
# Paths relative to STATIC_URL
js = ("js/file.js", "js/file2.js",)
Но, на мой взгляд, это может быть немного хакерским
В качестве альтернативы , чтобы изменить HTML-код определенного поля, необходимо создать собственный виджет для конкретных полей, которые вы хотите редактировать:
https://docs.djangoproject.com/en/dev/ref/forms/widgets/
Наконец , если вам нужно динамически добавлять или удалять поля, я думаю, что лучший способ сделать это - использовать в формах init function:
class MyForm(form.ModelForm):
def __init__(self, *args, **kwargs):
super(MyForm, self).__init__(*args, **kwargs)
if self.fields['example_field_name'].initial == "some_value":
# do something ...