diff options
Diffstat (limited to 'django')
| -rw-r--r-- | django/contrib/admin/options.py | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/django/contrib/admin/options.py b/django/contrib/admin/options.py index 48b93166c8..e67f081557 100644 --- a/django/contrib/admin/options.py +++ b/django/contrib/admin/options.py @@ -215,9 +215,10 @@ class BaseModelAdmin(six.with_metaclass(RenameBaseModelAdminMethods)): }) kwargs['empty_label'] = _('None') if db_field.blank else None - queryset = self.get_field_queryset(db, db_field, request) - if queryset is not None: - kwargs['queryset'] = queryset + if not 'queryset' in kwargs: + queryset = self.get_field_queryset(db, db_field, request) + if queryset is not None: + kwargs['queryset'] = queryset return db_field.formfield(**kwargs) @@ -238,9 +239,10 @@ class BaseModelAdmin(six.with_metaclass(RenameBaseModelAdminMethods)): elif db_field.name in (list(self.filter_vertical) + list(self.filter_horizontal)): kwargs['widget'] = widgets.FilteredSelectMultiple(db_field.verbose_name, (db_field.name in self.filter_vertical)) - queryset = self.get_field_queryset(db, db_field, request) - if queryset is not None: - kwargs['queryset'] = queryset + if not 'queryset' in kwargs: + queryset = self.get_field_queryset(db, db_field, request) + if queryset is not None: + kwargs['queryset'] = queryset return db_field.formfield(**kwargs) |
