python - Django如何在模板中获取GET参数
问题描述
我正在做一个 django 项目。
我想知道如何在模板中获取 GET 参数,以便我可以激活相应的选项卡。
我尝试了下面的代码,但是没有用。
<a class="list-group-item {% if '?q=' in request.path %}active{% endif %}" href="{% url 'blah'%}"> Foo </a>
先感谢您。
解决方案
获取它view
并将其作为参数发送render
active = ('?q=' in request.path)
render(..., context={"active": active})
并在模板中使用
class="list-group-item {% if active %}active{% endif %}"
或者得到它
if '?q=' in request.path:
extra_class = "active"
else:
extra_class = ""
render(..., context={"extra_class": extra_class})
并在模板中设置if
class="list-group-item {{ extra_class }}"
顺便提一句:
你也可以得到它
query = request.GET.get('q', '')
render(..., context={"query": query})
并在模板中使用它来设置类和显示查询
You search: {{ query }}
class="list-group-item {% if query %}active{% endif %}"
推荐阅读
- javascript - 如何在页面刷新时将用户的位置存储在相同的滚动位置
- node.js - 路由在 src/index.html 角度不起作用
- asp.net-core - Shieldui - ASP.Net Core CRUD 操作 - 弹出编辑
- regex - Notepad++ 书签行包含特定字符并使用正则表达式从字符串中间开始
- android - 为什么gradlew assembleDebug不运行jetifier,而react-native run-android运行jetifier?
- jquery - 如何删除 jQuery 数据表中的隐藏复选框
- python - 在Python中检查目录是否为空的最快方法是什么
- android - 如果他们在android中没有jsonobject,如何从Jsonarray获取Jsonarray
- vue.js - vue 多次发出一次
- c# - UWP:导航到新页面时无法输入文本框