tags added to the list view of all models

This commit is contained in:
ryanmerolle 2022-07-08 04:09:53 +00:00
parent aab77e6891
commit 46efb197dc
2 changed files with 24 additions and 11 deletions

View File

@ -2,7 +2,7 @@ from django import forms
from ipam.models import Prefix
from netbox.forms import NetBoxModelForm, NetBoxModelFilterSetForm
from utilities.forms.fields import CommentField, DynamicModelChoiceField
from utilities.forms import CommentField, DynamicModelChoiceField, DynamicModelMultipleChoiceField, StaticSelectMultiple, TagFilterField
from .models import AccessList, AccessListRule, ActionChoices, ProtocolChoices, TypeChoices
@ -18,12 +18,15 @@ class AccessListFilterForm(NetBoxModelFilterSetForm):
model = AccessList
type = forms.MultipleChoiceField(
choices=TypeChoices,
required=False
required=False,
widget=StaticSelectMultiple()
)
default_action = forms.MultipleChoiceField(
choices=ActionChoices,
required=False
required=False,
widget=StaticSelectMultiple()
)
tag = TagFilterField(model)
class AccessListRuleForm(NetBoxModelForm):
@ -49,16 +52,20 @@ class AccessListRuleFilterForm(NetBoxModelFilterSetForm):
model = AccessListRule
access_list = forms.ModelMultipleChoiceField(
queryset=AccessList.objects.all(),
required=False
required=False,
widget=StaticSelectMultiple()
)
index = forms.IntegerField(
required=False
)
protocol = forms.MultipleChoiceField(
choices=ProtocolChoices,
required=False
required=False,
widget=StaticSelectMultiple()
)
action = forms.MultipleChoiceField(
choices=ActionChoices,
required=False
required=False,
widget=StaticSelectMultiple()
)
tag = TagFilterField(model)

View File

@ -1,6 +1,6 @@
import django_tables2 as tables
from netbox.tables import NetBoxTable, ChoiceFieldColumn
from netbox.tables import NetBoxTable, columns, ChoiceFieldColumn
from .models import AccessList, AccessListRule
@ -11,11 +11,14 @@ class AccessListTable(NetBoxTable):
type = ChoiceFieldColumn()
default_action = ChoiceFieldColumn()
rule_count = tables.Column()
tags = columns.TagColumn(
url_name='plugins:netbox_access_lists:accesslist_list'
)
class Meta(NetBoxTable.Meta):
model = AccessList
fields = ('pk', 'id', 'name', 'type', 'rule_count', 'default_action', 'comments', 'actions')
default_columns = ('name', 'type', 'rule_count', 'default_action')
fields = ('pk', 'id', 'name', 'type', 'rule_count', 'default_action', 'comments', 'actions', 'tags')
default_columns = ('name', 'type', 'rule_count', 'default_action', 'tags')
class AccessListRuleTable(NetBoxTable):
@ -27,14 +30,17 @@ class AccessListRuleTable(NetBoxTable):
)
protocol = ChoiceFieldColumn()
action = ChoiceFieldColumn()
tags = columns.TagColumn(
url_name='plugins:netbox_access_lists:accesslistrule_list'
)
class Meta(NetBoxTable.Meta):
model = AccessListRule
fields = (
'pk', 'id', 'access_list', 'index', 'source_prefix', 'source_ports', 'destination_prefix',
'destination_ports', 'protocol', 'action', 'description', 'actions',
'destination_ports', 'protocol', 'action', 'description', 'actions', 'tags'
)
default_columns = (
'access_list', 'index', 'source_prefix', 'source_ports', 'destination_prefix',
'destination_ports', 'protocol', 'action', 'actions',
'destination_ports', 'protocol', 'action', 'actions', 'tags'
)