2015-12-02 60 views
0

的名單上有多個GET PARAMS一個url(同名) - mycompany.com/?a=1&a=2Django模板 - 獲得多個GET PARAM

當我在Django模板做:

{{ request.GET }} 

我得到:

<QueryDict: {'a': ['1', '2']}> 

當我在Django模板:

{{ request.GET.a }} 

我得到:

2 

當我嘗試循環:

{% for a in request.GET.a %} 
    {{ a }} 
{% endfor %} 

我得到:

2 

如何使行爲多GET PARAMS在Django模板列表?謝謝!

回答

-1

模板濾波器:

from django import template 

register = template.Library() 

@register.filter 
def get_item(dictionary, key): 
    return dict(dictionary).get(key) 

模板:

{{ request.GET|get_item:'a' }} 
+0

這是如何回答的問題? – xyres

+0

@xyres,有什麼不對?只需使用模板過濾器來使QueryDict的行爲像一個正常的字典。 – MaxCore

0

模板濾波器:

from django import template 

register = template.Library() 

@register.filter 
def get_list(dictionary, key): 
    return dictionary.getlist(key) 

Templates:

{% for a in request.GET|get_list:'a' %} 
    {{ a }} 
{% endfor %}