From 9e0493c64c83b6a65687337220a61b311f015ecd Mon Sep 17 00:00:00 2001 From: Martin Hauser Date: Tue, 10 Jun 2025 18:13:59 +0200 Subject: [PATCH] Closes #17183 - Add Object Types Field to Tag Bulk Import Form (#19639) --- netbox/extras/forms/bulk_import.py | 10 +++++++++- netbox/extras/tests/test_views.py | 11 +++++++---- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/netbox/extras/forms/bulk_import.py b/netbox/extras/forms/bulk_import.py index 5c62932e5..cf15495ca 100644 --- a/netbox/extras/forms/bulk_import.py +++ b/netbox/extras/forms/bulk_import.py @@ -238,10 +238,18 @@ class TagImportForm(CSVModelForm): label=_('Weight'), required=False ) + object_types = CSVMultipleContentTypeField( + label=_('Object types'), + queryset=ObjectType.objects.with_feature('tags'), + help_text=_("One or more assigned object types"), + required=False, + ) class Meta: model = Tag - fields = ('name', 'slug', 'color', 'weight', 'description') + fields = ( + 'name', 'slug', 'color', 'weight', 'description', 'object_types', + ) class JournalEntryImportForm(NetBoxModelImportForm): diff --git a/netbox/extras/tests/test_views.py b/netbox/extras/tests/test_views.py index 6378b29b8..fd3ce5453 100644 --- a/netbox/extras/tests/test_views.py +++ b/netbox/extras/tests/test_views.py @@ -444,6 +444,8 @@ class TagTestCase(ViewTestCases.OrganizationalObjectViewTestCase): @classmethod def setUpTestData(cls): + site_ct = ContentType.objects.get_for_model(Site) + tags = ( Tag(name='Tag 1', slug='tag-1'), Tag(name='Tag 2', slug='tag-2', weight=1), @@ -456,14 +458,15 @@ class TagTestCase(ViewTestCases.OrganizationalObjectViewTestCase): 'slug': 'tag-x', 'color': 'c0c0c0', 'comments': 'Some comments', + 'object_types': [site_ct.pk], 'weight': 11, } cls.csv_data = ( - "name,slug,color,description,weight", - "Tag 4,tag-4,ff0000,Fourth tag,0", - "Tag 5,tag-5,00ff00,Fifth tag,1111", - "Tag 6,tag-6,0000ff,Sixth tag,0", + "name,slug,color,description,object_types,weight", + "Tag 4,tag-4,ff0000,Fourth tag,dcim.interface,0", + "Tag 5,tag-5,00ff00,Fifth tag,'dcim.device,dcim.site',1111", + "Tag 6,tag-6,0000ff,Sixth tag,dcim.site,0", ) cls.csv_update_data = (