访问模板在Django中传递变量

时间:2015-04-10 12:16:57

标签: django django-templates

我转到模板:

testruns ,即"get_list_or_404(TestRun)"

dict ,就像这样:

for testrun in testruns:
    dict[testrun.id] = {
        'passed' : bla bla,
        'failed' : bla bla 2
    }

实际上testrun.id TestRun 模型

中的一些其他信息之间的地图

在模板中,我想这样做:

{% for testrun in testruns %}

     console.log("{{ dict.testrun.id }}");
{% endfor %}

但不输出任何内容


console.log("{{ testrun.id }}");将输出特定的ID(例如“37”)

console.log("{{ dict.37 }}");将从字典输出相应的值

那么,为什么这不输出任何东西?

console.log("{{ dict.testrun.id }}");

如何从 dict 获取'passed''failed'的数据:

另外,这个:

console.log("{{ dict[testrun.id] }}");

将输出此错误:

TemplateSyntaxError at /path/dashboard

Could not parse the remainder: '[testrun.id]' from 'dict[testrun.id]'

1 个答案:

答案 0 :(得分:0)

该点将被视为模板引擎进行属性查找的触发器,因此dict.testrun.id将被解析为"尝试从id属性中查找testrun属性{ {1}}&#34 ;.相反,如果你想显示整个dict内容,你可能只是遍历字典:

dict

或者,如果您要按变量值查找字典查找,则必须制作自定义模板标记,如此处所述 - Django template how to look up a dictionary value with a variable