Refactor extras forms

This commit is contained in:
jeremystretch
2021-09-28 10:44:53 -04:00
parent db522f96be
commit 833acc3618
8 changed files with 1036 additions and 988 deletions

View File

@@ -0,0 +1,30 @@
from django import forms
from utilities.forms import BootstrapMixin
__all__ = (
'ScriptForm',
)
class ScriptForm(BootstrapMixin, forms.Form):
_commit = forms.BooleanField(
required=False,
initial=True,
label="Commit changes",
help_text="Commit changes to the database (uncheck for a dry-run)"
)
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
# Move _commit to the end of the form
commit = self.fields.pop('_commit')
self.fields['_commit'] = commit
@property
def requires_input(self):
"""
A boolean indicating whether the form requires user input (ignore the _commit field).
"""
return bool(len(self.fields) > 1)