diff --git a/CHANGELOG.md b/CHANGELOG.md index ecb484b..b2e8569 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,12 @@ ## [Unreleased] +## [1.8.1](https://github.com/ICTU/netbox_slm/releases/tag/1.8.1) - 2025-04-11 + +### Fixed + +* Fix filtering on foreign objects (#65) + ## [1.8.0](https://github.com/ICTU/netbox_slm/releases/tag/1.8.0) - 2025-02-25 ### Added diff --git a/netbox_slm/__init__.py b/netbox_slm/__init__.py index 5219a2b..9114afc 100644 --- a/netbox_slm/__init__.py +++ b/netbox_slm/__init__.py @@ -16,7 +16,7 @@ limitations under the License. from netbox.plugins import PluginConfig -__version__ = "1.8.0" +__version__ = "1.8.1" class SLMConfig(PluginConfig): diff --git a/netbox_slm/filtersets.py b/netbox_slm/filtersets.py index 9e82080..594ce7b 100644 --- a/netbox_slm/filtersets.py +++ b/netbox_slm/filtersets.py @@ -19,7 +19,7 @@ class SoftwareProductFilterSet(NetBoxModelFilterSet): name = CharFilter(lookup_expr="icontains") description = CharFilter(lookup_expr="icontains") - manufacturer = ModelMultipleChoiceFilter(queryset=Manufacturer.objects.all()) + manufacturer_id = ModelMultipleChoiceFilter(queryset=Manufacturer.objects.all()) class Meta: model = SoftwareProduct @@ -47,12 +47,12 @@ class SoftwareProductVersionFilterSet(NetBoxModelFilterSet): release_type = MultipleChoiceFilter(choices=SoftwareReleaseTypes.choices) - manufacturer = ModelMultipleChoiceFilter( + manufacturer_id = ModelMultipleChoiceFilter( field_name="software_product__manufacturer", queryset=Manufacturer.objects.all(), ) - software_product = ModelMultipleChoiceFilter( + software_product_id = ModelMultipleChoiceFilter( queryset=SoftwareProduct.objects.all(), label="Software Product", ) @@ -78,17 +78,17 @@ class SoftwareProductVersionFilterSet(NetBoxModelFilterSet): class SoftwareProductInstallationFilterSet(NetBoxModelFilterSet): """Filter capabilities for SoftwareProductInstallation instances.""" - device = ModelMultipleChoiceFilter(queryset=Device.objects.all()) - virtualmachine = ModelMultipleChoiceFilter( + device_id = ModelMultipleChoiceFilter(queryset=Device.objects.all()) + virtualmachine_id = ModelMultipleChoiceFilter( queryset=VirtualMachine.objects.all(), label="Virtual Machine", ) - cluster = ModelMultipleChoiceFilter(queryset=Cluster.objects.all()) - software_product = ModelMultipleChoiceFilter( + cluster_id = ModelMultipleChoiceFilter(queryset=Cluster.objects.all()) + software_product_id = ModelMultipleChoiceFilter( queryset=SoftwareProduct.objects.all(), label="Software Product", ) - version = ModelMultipleChoiceFilter(queryset=SoftwareProductVersion.objects.all()) + version_id = ModelMultipleChoiceFilter(queryset=SoftwareProductVersion.objects.all()) class Meta: model = SoftwareProductInstallation @@ -116,12 +116,12 @@ class SoftwareLicenseFilterSet(NetBoxModelFilterSet): spdx_expression = CharFilter(lookup_expr="icontains", label="SPDX expression") stored_location = CharFilter(lookup_expr="icontains") - software_product = ModelMultipleChoiceFilter( + software_product_id = ModelMultipleChoiceFilter( queryset=SoftwareProduct.objects.all(), label="Software Product", ) - version = ModelMultipleChoiceFilter(queryset=SoftwareProductVersion.objects.all()) - installation = ModelMultipleChoiceFilter(queryset=SoftwareProductInstallation.objects.all()) + version_id = ModelMultipleChoiceFilter(queryset=SoftwareProductVersion.objects.all()) + installation_id = ModelMultipleChoiceFilter(queryset=SoftwareProductInstallation.objects.all()) class Meta: model = SoftwareLicense diff --git a/netbox_slm/templates/netbox_slm/installations_card_include.html b/netbox_slm/templates/netbox_slm/installations_card_include.html index 2694da4..a56f21a 100644 --- a/netbox_slm/templates/netbox_slm/installations_card_include.html +++ b/netbox_slm/templates/netbox_slm/installations_card_include.html @@ -12,10 +12,10 @@ {% endif %} {% if search_obj == "cluster" %} -{% htmx_table "plugins:netbox_slm:softwareproductinstallation_list" cluster=object.pk %} +{% htmx_table "plugins:netbox_slm:softwareproductinstallation_list" cluster_id=object.pk %} {% elif search_obj == "device" %} -{% htmx_table "plugins:netbox_slm:softwareproductinstallation_list" device=object.pk %} +{% htmx_table "plugins:netbox_slm:softwareproductinstallation_list" device_id=object.pk %} {% elif search_obj == "virtualmachine" %} -{% htmx_table "plugins:netbox_slm:softwareproductinstallation_list" virtualmachine=object.pk %} +{% htmx_table "plugins:netbox_slm:softwareproductinstallation_list" virtualmachine_id=object.pk %} {% endif %} diff --git a/sonar-project.properties b/sonar-project.properties index df3ac8b..de09ea4 100644 --- a/sonar-project.properties +++ b/sonar-project.properties @@ -2,7 +2,7 @@ sonar.organization=ictu sonar.projectKey=ICTU_netbox_slm sonar.projectName=netbox-slm -sonar.projectVersion=1.8.0 +sonar.projectVersion=1.8.1 # Path is relative to the sonar-project.properties file sonar.sources=netbox_slm