diff options
| author | yushanfans2233 <yushanfans2233@qq.com> | 2023-11-11 15:24:24 +0800 |
|---|---|---|
| committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2023-12-04 10:52:06 +0100 |
| commit | 14b0132e5e70854076ea781451f5ff37f8dc8edd (patch) | |
| tree | 698a7483db22596df73a9535bb79ebf0fc6763c7 /django/views | |
| parent | 8fcb9f1f106cf60d953d88aeaa412cc625c60029 (diff) | |
Fixed #34830 -- Added request to bad_request/csrf_failure view template contexts.
Diffstat (limited to 'django/views')
| -rw-r--r-- | django/views/csrf.py | 5 | ||||
| -rw-r--r-- | django/views/defaults.py | 3 |
2 files changed, 5 insertions, 3 deletions
diff --git a/django/views/csrf.py b/django/views/csrf.py index 3c572a621a..adc629e843 100644 --- a/django/views/csrf.py +++ b/django/views/csrf.py @@ -67,13 +67,14 @@ def csrf_failure(request, reason="", template_name=CSRF_FAILURE_TEMPLATE_NAME): } try: t = loader.get_template(template_name) + body = t.render(request=request) except TemplateDoesNotExist: if template_name == CSRF_FAILURE_TEMPLATE_NAME: # If the default template doesn't exist, use the fallback template. with builtin_template_path("csrf_403.html").open(encoding="utf-8") as fh: t = Engine().from_string(fh.read()) - c = Context(c) + body = t.render(Context(c)) else: # Raise if a developer-specified template doesn't exist. raise - return HttpResponseForbidden(t.render(c)) + return HttpResponseForbidden(body) diff --git a/django/views/defaults.py b/django/views/defaults.py index ccad802a54..8f56a8fb89 100644 --- a/django/views/defaults.py +++ b/django/views/defaults.py @@ -109,6 +109,7 @@ def bad_request(request, exception, template_name=ERROR_400_TEMPLATE_NAME): """ try: template = loader.get_template(template_name) + body = template.render(request=request) except TemplateDoesNotExist: if template_name != ERROR_400_TEMPLATE_NAME: # Reraise if it's a missing custom template. @@ -118,7 +119,7 @@ def bad_request(request, exception, template_name=ERROR_400_TEMPLATE_NAME): ) # No exception content is passed to the template, to not disclose any # sensitive information. - return HttpResponseBadRequest(template.render()) + return HttpResponseBadRequest(body) @requires_csrf_token |
