Django 模板 - 获取多个 GET 参数的列表

Max*_*ore 5 django django-templates

我有一个带有多个 GET 参数(同名)的 url -mycompany.com/?a=1&a=2

当我在 django 模板中这样做时:

{{ request.GET }}
Run Code Online (Sandbox Code Playgroud)

我得到:

<QueryDict: {'a': ['1', '2']}> 
Run Code Online (Sandbox Code Playgroud)

当我在 django 模板中这样做时:

{{ request.GET.a }}
Run Code Online (Sandbox Code Playgroud)

我得到:

2
Run Code Online (Sandbox Code Playgroud)

当我尝试循环时:

{% for a in request.GET.a %}
    {{ a }}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

我得到:

2
Run Code Online (Sandbox Code Playgroud)

如何使多个 GET 参数作为 django 模板中的列表?谢谢!

Kit*_*Kat 9

模板过滤器:

from django import template

register = template.Library()

@register.filter
def get_list(dictionary, key):
    return dictionary.getlist(key)
Run Code Online (Sandbox Code Playgroud)

模板:

{% for a in request.GET|get_list:'a' %}
    {{ a }}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)