1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Add REST API endpoint for custom fields

This commit is contained in:
Jeremy Stretch
2020-11-23 15:25:20 -05:00
parent 6fb080ff4c
commit a05fe69043
6 changed files with 61 additions and 12 deletions

View File

@ -13,6 +13,7 @@ from django.utils.safestring import mark_safe
from extras.choices import *
from extras.utils import FeatureQuery
from utilities.forms import CSVChoiceField, DatePicker, LaxURLField, StaticSelect2, add_blank_choice
from utilities.querysets import RestrictedQuerySet
from utilities.validators import validate_regex
@ -63,7 +64,7 @@ class CustomFieldModel(models.Model):
raise ValidationError(f"Missing required custom field '{cf.name}'.")
class CustomFieldManager(models.Manager):
class CustomFieldManager(models.Manager.from_queryset(RestrictedQuerySet)):
use_in_migrations = True
def get_for_model(self, model):
@ -193,7 +194,7 @@ class CustomField(models.Model):
})
# A selection field must have at least two choices defined
if self.type == CustomFieldTypeChoices.TYPE_SELECT and len(self.choices) < 2:
if self.type == CustomFieldTypeChoices.TYPE_SELECT and self.choices and len(self.choices) < 2:
raise ValidationError({
'choices': "Selection fields must specify at least two choices."
})