Получить текущий маршрут вместо route_path в пирамиде
У меня есть панель навигации, например:
<div id="nav">
<ul>
<li
% if request.current_route_path == "somepath":
class="current"
% endif
> <a href='/page1"> 1 </a></li>
<li
% if request.current_route_path == "another_test":
class="current"
%endif
> <a href="/page2"> 2 </a> <li>
</ul>
</div>
Я хочу добавить несколько кодов, чтобы проверить, что является текущим route
чтобы я мог решить, какая полоса будет выделена (class="current"
).
Я знаю, что у Пирамиды есть метод current_route_path
чтобы получить путь к текущему URL. Тем не менее, я думаю, что лучше использовать имя маршрута вместо пути маршрута. У кого-нибудь есть идеи по этому поводу?
2 ответа
Решение
Я думаю, что вы ищете что-то вроде этого:
% if request.url == request.route_url('my_route_name')
##do stuff
%endif
где request.url - это текущий URL, а request.route_url('my_route_name') - это URL названного маршрута.
То, что вы хотите, это использовать matched_route
,
if request.matched_route.name == 'my_route_name':