Flask: current page in request variable Flask: current page in request variable flask flask

Flask: current page in request variable


As long as you've imported request, request.path should contain this information.


Using request.path doesn't seem to be a proper approach since you'll have to update the paths in case of changing URL rules or deploying your site under a subfolder.

Use request.url_rule.endpoint instead, it contains actual endpoint name independent of actual path:

(Pdb) request.url_rule.endpoint'myblueprint.client_pipeline'

In a template:

<li {% if request.url_rule.endpoint == "myblueprint.client_pipeline" %}class="active"{% endif %}>Home</li>

Good luck!


First import request from flask in your application. Then you can use it without passing to template:

<li {%- if request.path == "/home" %} class="active"{% endif %}>    <a href="/">Home</a></li><li {%- if request.path=="/about" %} class="active"{% endif %}>    <a href="/about">About</a></li>