summaryrefslogtreecommitdiff
path: root/django/contrib/admin/widgets.py
diff options
context:
space:
mode:
Diffstat (limited to 'django/contrib/admin/widgets.py')
-rw-r--r--django/contrib/admin/widgets.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/django/contrib/admin/widgets.py b/django/contrib/admin/widgets.py
index f5c3939012..67eac083e7 100644
--- a/django/contrib/admin/widgets.py
+++ b/django/contrib/admin/widgets.py
@@ -333,16 +333,24 @@ class RelatedFieldWidgetWrapper(forms.Widget):
)
def get_context(self, name, value, attrs):
- from django.contrib.admin.views.main import IS_POPUP_VAR, TO_FIELD_VAR
+ from django.contrib.admin.views.main import (
+ IS_POPUP_VAR,
+ SOURCE_MODEL_VAR,
+ TO_FIELD_VAR,
+ )
rel_opts = self.rel.model._meta
info = (rel_opts.app_label, rel_opts.model_name)
related_field_name = self.rel.get_related_field().name
+ app_label = self.rel.field.model._meta.app_label
+ model_name = self.rel.field.model._meta.model_name
+
url_params = "&".join(
"%s=%s" % param
for param in [
(TO_FIELD_VAR, related_field_name),
(IS_POPUP_VAR, 1),
+ (SOURCE_MODEL_VAR, f"{app_label}.{model_name}"),
]
)
context = {