在Pyramid中获取当前路线而不是route_path

时间:2012-11-25 16:29:17

标签: python pyramid

我有导航栏,例如:

<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")。

我知道Pyramid有一个方法current_route_path来获取当前URL的路径。但是,我认为最好使用路由名称而不是路径路径。有没有人有这方面的想法?

2 个答案:

答案 0 :(得分:31)

您想要的是使用matched_route

if request.matched_route.name == 'my_route_name':

答案 1 :(得分:1)

我认为你正在寻找这样的东西:

% if request.url == request.route_url('my_route_name')
##do stuff
%endif

其中request.url是当前网址,request.route_url('my_route_name')是指定路由的网址