我想知道根据URL的更改来更改html类名称的最佳方法。
align
每次使用导航项目后,我都希望该类包含“活动”,例如如果网址中包含“ site.com/snippets”,我希望该类说“导航项目处于活动状态”,我认为是使用请求.get_full_path中的if标记可能是一种方法,但这会造成混乱。
答案 0 :(得分:1)
一种执行此操作的方法是:
<li class="nav-item {% if request.resolver_match.url_name == 'home' %}active{% endif %}">
答案 1 :(得分:1)
有很多方法可以实现。
我认为这是最简单的。当您在控制器上渲染视图时,可以传递一个var并在需要时打印它:
return render(request, 'snippets.html', {'active-nav-item': 'home' }
每个导航项检查变量
<li class="nav-item {% if active-nav-item == 'home' %}active{% endif %}">