def clean(self): if self.date and self.saeculo == '': self.saeculo = set_saeculo(self) mora_value = self.mora_reference if mora_value: reference_base = 'DA' regex_pattern = re.compile('([0-9]+)(.*?)$') if re.search(regex_pattern, mora_value): reference_number = re.search(regex_pattern, mora_value).group(1) reference_suffix = re.search(regex_pattern, mora_value).group(2) else: raise ValidationError("The Mora reference number must contain at least one digit.") if len(reference_number) > 3: raise ValidationError("The Mora reference number must not be longer than three digits.") if len(reference_number) == 3: self.mora_reference = reference_base + reference_number + reference_suffix elif len(reference_number) == 2: self.mora_reference = reference_base + '0' + reference_number + reference_suffix elif len(reference_number) == 1: self.mora_reference = reference_base + '00' + reference_number + reference_suffix
def clean(self): if self.date and self.saeculo == '': self.saeculo = set_saeculo(self)