1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Fixes #1289: Retain inside NAT assignment when editing an IP address

This commit is contained in:
Jeremy Stretch
2017-07-05 14:29:40 -04:00
parent 5233463f0b
commit 14f5204548

View File

@ -472,9 +472,6 @@ class ChainedFieldsMixin(forms.BaseForm):
def __init__(self, *args, **kwargs):
super(ChainedFieldsMixin, self).__init__(*args, **kwargs)
# if self.is_bound:
# assert False, self.data
for field_name, field in self.fields.items():
if isinstance(field, ChainedModelChoiceField):
@ -492,6 +489,12 @@ class ChainedFieldsMixin(forms.BaseForm):
if filters_dict:
field.queryset = field.queryset.filter(**filters_dict)
elif not self.is_bound and self.instance and hasattr(self.instance, field_name):
obj = getattr(self.instance, field_name)
if obj is not None:
field.queryset = field.queryset.filter(pk=obj.pk)
else:
field.queryset = field.queryset.none()
elif not self.is_bound:
field.queryset = field.queryset.none()