访问的元组
t=[]
t.append(("a",1))
t.append(("b",2))
t.append(("c",3))
return render_to_response(t.html, context_instance=RequestContext(request, {'t':t}))
如果我想访问接入在Django模板T的值,而无需使用for循环我该怎么办它。我曾尝试以下,它似乎没有工作访问的元组
alert('{{t[a]}}');
alert('{{t[c]}}');
假设你的视图的代码是:
t=[]
t.extend([('a',1),('b',2),('c',3)])
(而不是如在OP说明)
{{ t.0.0 }}
是像在Python代码中使用t[0][0]
。这应该给你“a”,因为t.0
是列表t的第一个元素,它本身是一个元组,然后另一个.0
是元组的第一个元素。
{{ t.0.1 }}
将为1,依此类推。
但在你的问题中,你正在创建一个元组,并试图访问它,就像它是一个字典。
这就是问题所在。
我们不能访问键的值,即a,b,c? – Rajeev 2011-03-07 12:11:34
你可以,但你必须做一个字典:t = {'a':1,'b':2,'c':3},那么t.a应该可以工作。 – 2011-03-07 12:19:39
你可以把你的元组通过dict() function与dict:
mydict = dict(t)
然后在模板中,您可以通过按键像here访问项目:
{{ mydict|get_item:item.NAME }}
在你的代码的Theres错误分配值到t 。目前它与TypeError失败,所以我们不能确定t的真实结构是什么,所以我们不能帮助你。复制粘贴您的视图代码以防止这些错误。 – 2011-03-07 12:02:51
我已经纠正它 – Rajeev 2011-03-07 12:06:22