Not sure if this is a bug or an expected behavior, but anyway...
I have a middleware that alters
request.path in order to hide a certain part of the URL to the views, so if I have an URL like
/en/view/page/ this should become
/view/page/. With recent upgrades this stopped working, and after a bit of investigating I found that this was due to .
I spent a lot of time trying to understand why this was failing, since the debug page was showing the output I was expecting. For example, for
/en/view/page I got:
Using the URLconf defined in project.urls, Django tried these URL patterns, in this order:
The current URL, view/page/, didn't match any of these.
view/page/ matches the 3rd url pattern.
This happens because the debug page shows
request.path, while the URLconf actually evaluates
I fixed the problem by altering
request.path_info as well, but shouldn't the debug page show the URL that is actually evaluated by URLconf?
In case this should be fixed I can provide a patch, but actually I don't know if
.path_info should be always shown or must be shown only in certain places within the debug page.