From 97ddc7923a2d56cbc1e11beb2480aa5bf7d62c7e Mon Sep 17 00:00:00 2001 From: Tom Byers Date: Fri, 7 Aug 2020 10:30:46 +0100 Subject: [PATCH] Add GovukIntegerField - extends IntegerField --- app/main/forms.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/app/main/forms.py b/app/main/forms.py index 7b323ef21..2a8862309 100644 --- a/app/main/forms.py +++ b/app/main/forms.py @@ -325,6 +325,19 @@ class GovukDateField(DateField): return govuk_field_widget(self, field, param_extensions=param_extensions, **kwargs) +class GovukIntegerField(IntegerField): + def __init__(self, label='', validators=None, param_extensions=None, **kwargs): + super(GovukIntegerField, self).__init__(label, validators, **kwargs) + self.param_extensions = param_extensions + + # self.__call__ renders the HTML for the field by: + # 1. delegating to self.meta.render_field which + # 2. calls field.widget + # this bypasses that by making self.widget a method with the same interface as widget.__call__ + def widget(self, field, param_extensions=None, **kwargs): + return govuk_field_widget(self, field, param_extensions=param_extensions, **kwargs) + + class SMSCode(GovukTextInputField): validators = [ DataRequired(message='Cannot be empty'),