首页 > 解决方案 > Django如何在模板中获取GET参数

问题描述


我正在做一个 django 项目。
我想知道如何在模板中获取 GET 参数,以便我可以激活相应的选项卡。
我尝试了下面的代码,但是没有用。
<a class="list-group-item {% if '?q=' in request.path %}active{% endif %}" href="{% url 'blah'%}"> Foo </a>

先感谢您。

标签: pythondjangogetparameter

解决方案


获取它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 %}"

推荐阅读