bulk_edit.py 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. from django import forms
  2. from django.utils.translation import gettext_lazy as _
  3. from core.models import *
  4. from netbox.forms import NetBoxModelBulkEditForm
  5. from netbox.utils import get_data_backend_choices
  6. from utilities.forms.fields import CommentField
  7. from utilities.forms.widgets import BulkEditNullBooleanSelect
  8. __all__ = (
  9. 'DataSourceBulkEditForm',
  10. )
  11. class DataSourceBulkEditForm(NetBoxModelBulkEditForm):
  12. type = forms.ChoiceField(
  13. label=_('Type'),
  14. choices=get_data_backend_choices,
  15. required=False
  16. )
  17. enabled = forms.NullBooleanField(
  18. required=False,
  19. widget=BulkEditNullBooleanSelect(),
  20. label=_('Enforce unique space')
  21. )
  22. description = forms.CharField(
  23. label=_('Description'),
  24. max_length=200,
  25. required=False
  26. )
  27. comments = CommentField()
  28. parameters = forms.JSONField(
  29. label=_('Parameters'),
  30. required=False
  31. )
  32. ignore_rules = forms.CharField(
  33. label=_('Ignore rules'),
  34. required=False,
  35. widget=forms.Textarea()
  36. )
  37. model = DataSource
  38. fieldsets = (
  39. (None, ('type', 'enabled', 'description', 'comments', 'parameters', 'ignore_rules')),
  40. )
  41. nullable_fields = (
  42. 'description', 'description', 'parameters', 'comments', 'parameters', 'ignore_rules',
  43. )