10348 add decimal custom field

This commit is contained in:
Arthur 2022-09-20 11:26:33 -07:00
parent ac44731684
commit 67189471e7
2 changed files with 2 additions and 3 deletions

View File

@ -1,6 +1,5 @@
import re
from datetime import datetime, date
import decimal
import django_filters
from django import forms
@ -499,7 +498,7 @@ class CustomField(CloningMixin, ExportTemplatesMixin, WebhooksMixin, ChangeLogge
# Validate decimal
if self.type == CustomFieldTypeChoices.TYPE_DECIMAL:
if type(value) is not decimal.Decimal:
if type(value) is not str:
raise ValidationError("Value must be a decimal.")
if self.validation_minimum is not None and value < self.validation_minimum:
raise ValidationError(f"Value must be at least {self.validation_minimum}")

View File

@ -432,7 +432,7 @@ class CustomFieldAPITest(APITestCase):
object_type=ContentType.objects.get_for_model(VLAN),
default=[vlans[0].pk, vlans[1].pk],
),
CustomField(type=CustomFieldTypeChoices.TYPE_DECIMAL, name='decimal_field', default=123.45),
CustomField(type=CustomFieldTypeChoices.TYPE_DECIMAL, name='decimal_field', default='123.45'),
)
for cf in custom_fields:
cf.save()