diff --git a/docs/release-notes/version-2.11.md b/docs/release-notes/version-2.11.md index 34c848267..06020a9ac 100644 --- a/docs/release-notes/version-2.11.md +++ b/docs/release-notes/version-2.11.md @@ -5,6 +5,7 @@ ### Bug Fixes * [#6626](https://github.com/netbox-community/netbox/issues/6626) - Fix site field on VM search form; add site group +* [#6640](https://github.com/netbox-community/netbox/issues/6640) - Disallow numeric values in custom text fields * [#6652](https://github.com/netbox-community/netbox/issues/6652) - Fix exception when adding components in bulk to multiple devices --- diff --git a/netbox/extras/models/customfields.py b/netbox/extras/models/customfields.py index b88c73531..60c6adce9 100644 --- a/netbox/extras/models/customfields.py +++ b/netbox/extras/models/customfields.py @@ -280,8 +280,10 @@ class CustomField(BigIDModel): if value not in [None, '']: # Validate text field - if self.type == CustomFieldTypeChoices.TYPE_TEXT and self.validation_regex: - if not re.match(self.validation_regex, value): + if self.type == CustomFieldTypeChoices.TYPE_TEXT: + if type(value) is not str: + raise ValidationError(f"Value must be a string.") + if self.validation_regex and not re.match(self.validation_regex, value): raise ValidationError(f"Value must match regex '{self.validation_regex}'") # Validate integer