瀏覽代碼

Fixes #1297: Allow passing custom field choice selection PKs as string-quoted integers

Jeremy Stretch 9 年之前
父節點
當前提交
1d4a416100
共有 1 個文件被更改,包括 4 次插入0 次删除
  1. 4 0
      netbox/extras/api/customfields.py

+ 4 - 0
netbox/extras/api/customfields.py

@@ -49,6 +49,10 @@ class CustomFieldsSerializer(serializers.BaseSerializer):
 
             # Validate selected choice
             if cf.type == CF_TYPE_SELECT:
+                try:
+                    value = int(value)
+                except ValueError:
+                    raise ValidationError("{}: Choice selections must be passed as integers.".format(field_name))
                 valid_choices = [c.pk for c in cf.choices.all()]
                 if value not in valid_choices:
                     raise ValidationError("Invalid choice for field {}: {}".format(field_name, value))