From fb56d5bc660fef2555e5d7ea69b8306c7a6f2de8 Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Tue, 11 Feb 2020 10:21:44 -0500 Subject: [PATCH] Account for initial data when binding a DynamicModelChoiceField --- netbox/utilities/forms.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/netbox/utilities/forms.py b/netbox/utilities/forms.py index 494556b5f..fc724224b 100644 --- a/netbox/utilities/forms.py +++ b/netbox/utilities/forms.py @@ -562,10 +562,11 @@ class DynamicModelChoiceField(forms.ModelChoiceField): # Modify the QuerySet of the field before we return it. Limit choices to any data already bound: Options # will be populated on-demand via the APISelect widget. + field_name = '{}{}'.format(self.to_field_name or 'pk', self.field_modifier) if bound_field.data: - field_name = '{}{}'.format(self.to_field_name or 'pk', self.field_modifier) - kwargs = {field_name: bound_field.data} - self.queryset = self.queryset.filter(**kwargs) + self.queryset = self.queryset.filter(**{field_name: bound_field.data}) + elif bound_field.initial: + self.queryset = self.queryset.filter(**{field_name: bound_field.initial}) else: self.queryset = self.queryset.none()