From 1bd39e6568c32fb2f95639ce705d1fb24a672d50 Mon Sep 17 00:00:00 2001 From: jeremystretch Date: Thu, 26 May 2022 16:01:20 -0400 Subject: [PATCH] Fix filtering cables by connected device/rack/site --- netbox/dcim/models/cables.py | 25 +++++-------------------- 1 file changed, 5 insertions(+), 20 deletions(-) diff --git a/netbox/dcim/models/cables.py b/netbox/dcim/models/cables.py index 42c298279..d52f53044 100644 --- a/netbox/dcim/models/cables.py +++ b/netbox/dcim/models/cables.py @@ -116,20 +116,6 @@ class Cable(NetBoxModel): if b_terminations is not None: self.b_terminations = b_terminations - @classmethod - def from_db(cls, db, field_names, values): - """ - Cache the original A and B terminations of existing Cable instances for later reference inside clean(). - """ - instance = super().from_db(db, field_names, values) - - # instance._orig_termination_a_type_id = instance.termination_a_type_id - # instance._orig_termination_a_ids = instance.termination_a_ids - # instance._orig_termination_b_type_id = instance.termination_b_type_id - # instance._orig_termination_b_ids = instance.termination_b_ids - - return instance - def __str__(self): pk = self.pk or self._pk return self.label or f'#{pk}' @@ -166,12 +152,11 @@ class Cable(NetBoxModel): else: self._abs_length = None - # TODO: Move to CableTermination - # # Store the parent Device for the A and B terminations (if applicable) to enable filtering - # if hasattr(self.termination_a[0], 'device'): - # self._termination_a_device = self.termination_a[0].device - # if hasattr(self.termination_b[0], 'device'): - # self._termination_b_device = self.termination_b[0].device + # Store the parent Device for the A and B terminations (if applicable) to enable filtering + if hasattr(self, 'a_terminations'): + self._termination_a_device = self.a_terminations[0].device + if hasattr(self, 'b_terminations'): + self._termination_b_device = self.b_terminations[0].device super().save(*args, **kwargs)