QueryDict型から、a['item']とかで値を取得しても、中は配列だが取得できる値は配列の末尾の値のみ。配列(List)で取得したい場合は「a.getlist('item')」とする必要がある。forでループ処理したい場合は、「a.lists()」を利用し、タプル型で取得するのが良いかも。
>>> from django.http import * >>> q = QueryDict("f=1&n=1&f=2&n=2&f=3&n=3&f=4&n=4&f=5&n=5&f=6&n=6&f=7&n=7&f=8&n=8&f=9&n=9&f=10&n=10&f=11&n=11&f=12&n=12&f=13&n=13") >>> q <QueryDict: {u'n': [u'1', u'2', u'3', u'4', u'5', u'6', u'7', u'8', u'9', u'10', u'11', u'12', u'13'], u'f': [u'1', u'2', u'3', u'4', u'5', u'6', u'7', u'8', u'9', u'10', u'11', u'12', u'13']}> >>> q['n'] u'13' >>> q.getlist('n') [u'1', u'2', u'3', u'4', u'5', u'6', u'7', u'8', u'9', u'10', u'11', u'12', u'13'] >>> q.lists() [(u'n', [u'1', u'2', u'3', u'4', u'5', u'6', u'7', u'8', u'9', u'10', u'11', u'12', u'13']), (u'f', [u'1', u'2', u'3', u'4', u'5', u'6', u'7', u'8', u'9', u'10', u'11', u'12', u'13'])] >>> for (k,val) in q.lists(): ... print k,val ... n [u'1', u'2', u'3', u'4', u'5', u'6', u'7', u'8', u'9', u'10', u'11', u'12', u'13'] f [u'1', u'2', u'3', u'4', u'5', u'6', u'7', u'8', u'9', u'10', u'11', u'12', u'13'] >>>