mirror of
https://github.com/netbox-community/netbox.git
synced 2025-12-20 12:22:23 -06:00
Merge branch 'feature' into 3979-wireless
This commit is contained in:
@@ -24,8 +24,8 @@ class WirelessLANGroupSerializer(NestedGroupModelSerializer):
|
||||
class Meta:
|
||||
model = WirelessLANGroup
|
||||
fields = [
|
||||
'id', 'url', 'display', 'name', 'slug', 'parent', 'description', 'custom_fields', 'created', 'last_updated',
|
||||
'wirelesslan_count', '_depth',
|
||||
'id', 'url', 'display', 'name', 'slug', 'parent', 'description', 'tags', 'custom_fields', 'created',
|
||||
'last_updated', 'wirelesslan_count', '_depth',
|
||||
]
|
||||
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@ __all__ = (
|
||||
)
|
||||
|
||||
|
||||
class WirelessLANGroupBulkEditForm(BootstrapMixin, CustomFieldModelBulkEditForm):
|
||||
class WirelessLANGroupBulkEditForm(BootstrapMixin, AddRemoveTagsForm, CustomFieldModelBulkEditForm):
|
||||
pk = forms.ModelMultipleChoiceField(
|
||||
queryset=WirelessLANGroup.objects.all(),
|
||||
widget=forms.MultipleHiddenInput
|
||||
|
||||
@@ -20,11 +20,15 @@ class WirelessLANGroupForm(BootstrapMixin, CustomFieldModelForm):
|
||||
required=False
|
||||
)
|
||||
slug = SlugField()
|
||||
tags = DynamicModelMultipleChoiceField(
|
||||
queryset=Tag.objects.all(),
|
||||
required=False
|
||||
)
|
||||
|
||||
class Meta:
|
||||
model = WirelessLANGroup
|
||||
fields = [
|
||||
'parent', 'name', 'slug', 'description',
|
||||
'parent', 'name', 'slug', 'description', 'tags',
|
||||
]
|
||||
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
from wireless import filtersets, models
|
||||
from netbox.graphql.types import ObjectType, PrimaryObjectType
|
||||
from netbox.graphql.types import OrganizationalObjectType, PrimaryObjectType
|
||||
|
||||
__all__ = (
|
||||
'WirelessLANType',
|
||||
@@ -8,7 +8,7 @@ __all__ = (
|
||||
)
|
||||
|
||||
|
||||
class WirelessLANGroupType(ObjectType):
|
||||
class WirelessLANGroupType(OrganizationalObjectType):
|
||||
|
||||
class Meta:
|
||||
model = models.WirelessLANGroup
|
||||
|
||||
@@ -10,7 +10,7 @@ class Migration(migrations.Migration):
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
('dcim', '0137_rename_cable_peer'),
|
||||
('dcim', '0139_rename_cable_peer'),
|
||||
('extras', '0062_clear_secrets_changelog'),
|
||||
('ipam', '0050_iprange'),
|
||||
]
|
||||
@@ -26,6 +26,7 @@ class Migration(migrations.Migration):
|
||||
('name', models.CharField(max_length=100, unique=True)),
|
||||
('slug', models.SlugField(max_length=100, unique=True)),
|
||||
('description', models.CharField(blank=True, max_length=200)),
|
||||
('tags', taggit.managers.TaggableManager(through='extras.TaggedItem', to='extras.Tag')),
|
||||
('lft', models.PositiveIntegerField(editable=False)),
|
||||
('rght', models.PositiveIntegerField(editable=False)),
|
||||
('tree_id', models.PositiveIntegerField(db_index=True, editable=False)),
|
||||
|
||||
@@ -42,7 +42,7 @@ class WirelessAuthenticationBase(models.Model):
|
||||
abstract = True
|
||||
|
||||
|
||||
@extras_features('custom_fields', 'custom_links', 'export_templates', 'webhooks')
|
||||
@extras_features('custom_fields', 'custom_links', 'export_templates', 'tags', 'webhooks')
|
||||
class WirelessLANGroup(NestedGroupModel):
|
||||
"""
|
||||
A nested grouping of WirelessLANs
|
||||
|
||||
@@ -23,11 +23,14 @@ class WirelessLANGroupTable(BaseTable):
|
||||
url_params={'group_id': 'pk'},
|
||||
verbose_name='Wireless LANs'
|
||||
)
|
||||
tags = TagColumn(
|
||||
url_name='wireless:wirelesslangroup_list'
|
||||
)
|
||||
actions = ButtonsColumn(WirelessLANGroup)
|
||||
|
||||
class Meta(BaseTable.Meta):
|
||||
model = WirelessLANGroup
|
||||
fields = ('pk', 'name', 'wirelesslan_count', 'description', 'slug', 'actions')
|
||||
fields = ('pk', 'name', 'wirelesslan_count', 'description', 'slug', 'tags', 'actions')
|
||||
default_columns = ('pk', 'name', 'wirelesslan_count', 'description', 'actions')
|
||||
|
||||
|
||||
|
||||
@@ -19,11 +19,14 @@ class WirelessLANGroupTestCase(ViewTestCases.OrganizationalObjectViewTestCase):
|
||||
for group in groups:
|
||||
group.save()
|
||||
|
||||
tags = create_tags('Alpha', 'Bravo', 'Charlie')
|
||||
|
||||
cls.form_data = {
|
||||
'name': 'Wireless LAN Group X',
|
||||
'slug': 'wireless-lan-group-x',
|
||||
'parent': groups[2].pk,
|
||||
'description': 'A new wireless LAN group',
|
||||
'tags': [t.pk for t in tags],
|
||||
}
|
||||
|
||||
cls.csv_data = (
|
||||
|
||||
@@ -17,7 +17,7 @@ class WirelessLANGroupListView(generic.ObjectListView):
|
||||
'group',
|
||||
'wirelesslan_count',
|
||||
cumulative=True
|
||||
)
|
||||
).prefetch_related('tags')
|
||||
filterset = filtersets.WirelessLANGroupFilterSet
|
||||
filterset_form = forms.WirelessLANGroupFilterForm
|
||||
table = tables.WirelessLANGroupTable
|
||||
|
||||
Reference in New Issue
Block a user