> When DEBUG is True, you can provide a message to Http404 and it will
appear in the standard 404 debug template. Use these messages for
debugging purposes; they generally aren’t suitable for use in a production
404 template.
I was able to test whether the message I passed was visible on the debug
404 page for the view (to make sure the page was 404'ing for the right
reason). However, these tests have broken when upgrading to Django 3.2.
Looking at the actual response content, it doesn't seem as though the
actual message is visible anywhere on the page.
I'm currently just going to comment out the explicit test for finding the
exception message, but I was curious if anyone else has found this kind of
error as well, or if it's just me. If needed, I can try creating a simple
test case that reproduces this error (though I'll admit the problem could
be entirely on my end too).
--
Ticket URL: <https://code.djangoproject.com/ticket/32637>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
* cc: Jon Dufresne (added)
* component: Uncategorized => Error reporting
* severity: Normal => Release blocker
* stage: Unreviewed => Accepted
Comment:
Thanks for this report. Technical 404 debug page now always shows tried
URL patterns, that's why
[https://github.com/django/django/blob/e4430f22c8e3d29ce5d9d0263fba57121938d06d/django/views/templates/technical_404.html#L69-L71
Http404's message] is no longer displayed. IMO we should keep showing a
message, e.g.
{{{
diff --git a/django/views/templates/technical_404.html
b/django/views/templates/technical_404.html
index 077bb20964..aeba2daf9c 100644
--- a/django/views/templates/technical_404.html
+++ b/django/views/templates/technical_404.html
@@ -20,11 +20,13 @@
#info ol li { font-family: monospace; }
#summary { background: #ffc; }
#explanation { background:#eee; border-bottom: 0px none; }
+ pre.exception_value { font-family: sans-serif; color: #575757; font-
size: 1.5em; margin: 10px 0 10px 0; }
</style>
</head>
<body>
<div id="summary">
<h1>Page not found <span>(404)</span></h1>
+ {% if reason %}<pre class="exception_value">{{ reason }}</pre>{%
endif %}
<table class="meta">
<tr>
<th>Request Method:</th>
@@ -66,8 +68,6 @@
{% endif %}
{% if resolved %}matched the last one.{% else %}didn’t match any
of these.{% endif %}
</p>
- {% else %}
- <p>{{ reason }}</p>
{% endif %}
</div>
}}}
Regression in 11ebc6479ffda87376b60c9475d33d8120f86368.
--
Ticket URL: <https://code.djangoproject.com/ticket/32637#comment:1>
Comment (by Claude Paroz):
+1 for fixing that regression.
--
Ticket URL: <https://code.djangoproject.com/ticket/32637#comment:2>
* owner: nobody => Mariusz Felisiak
* status: new => assigned
--
Ticket URL: <https://code.djangoproject.com/ticket/32637#comment:3>
* has_patch: 0 => 1
Comment:
[https://github.com/django/django/pull/14252 PR]
--
Ticket URL: <https://code.djangoproject.com/ticket/32637#comment:4>
* status: assigned => closed
* resolution: => fixed
Comment:
In [changeset:"3b8527e32b665df91622649550813bb1ec9a9251" 3b8527e3]:
{{{
#!CommitTicketReference repository=""
revision="3b8527e32b665df91622649550813bb1ec9a9251"
Fixed #32637 -- Restored exception message on technical 404 debug page.
Thanks Atul Varma for the report.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32637#comment:5>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"d6314c4c2ef647efe0d12450214fc5b4a4055290" d6314c4]:
{{{
#!CommitTicketReference repository=""
revision="d6314c4c2ef647efe0d12450214fc5b4a4055290"
[3.2.x] Fixed #32637 -- Restored exception message on technical 404 debug
page.
Thanks Atul Varma for the report.
Backport of 3b8527e32b665df91622649550813bb1ec9a9251 from main
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32637#comment:6>